2.6.1 • Published 1 year ago

@whitesev/utils v2.6.1

Weekly downloads
-
License
MIT
Repository
-
Last release
1 year ago

安装

  • 最新版本:npm version
npm install @whitesev/utils
// 或者
pnpm add @whitesev/utils

使用文档

  • Utils.isNull 判断对象是否为空
Utils.isNull(0);
结果:false

Utils.isNull("");
结果:false

Utils.isNull(" ");
结果:false

Utils.isNull(undefined);
结果:false
  • Utils.assign 代替 Object.assign
Utils.assign({1:1},{1:2,2:3})
结果:{1:2}
  • Utils.waitNode 等待元素出现在页面中,非使用setInterval实现,性能损耗较少
/* 等待a元素出现,返回Promise对象,在then中或使用await获取结果,统一返回数组格式的元素,如[...a] */
Utils.waitNode("a").then((element => {
  console.log(element );
});

/* 同时满足多个选择器的结果,都满足了才会触发回调 */
let moreDOM = await Utils.waitNode("#page", "a[href]");
console.log(moreDOM);
  • Utils.isVisible 判断元素是否是可见的
  • Utils.isPhone 判断当前的User-Agent是否是移动端
  • Utils.toJSON 代替JSON.parse,满足更多格式的转换对象
Utils.toJSON("{123:123}");
结果:{123:123}
  • Utils.Httpx 代替油猴的GM_xmlhttpRequest,统一管理请求状态
let httpx = new Utils.Httpx();
/* 修改配置 */
httpx.config({
  timeout: 5000,
  onabort: function () {
    console.log("请求取消");
  },
  ontimeout: function () {
    console.log("请求超时");
  },
  onerror: function (response) {
    console.log("httpx-onerror 请求异常");
    console.log(response);
  },
});
/* 发送post请求 */
let postResp = await httpx.post({
  url: url,
  data: JSON.stringify({
    test: 1,
  }),
});
  • Utils.GM_Menu 代替油猴的GM_registerMenuCommandGM_unregisterMenuCommand,管理油猴菜单
let GM_Menu = new Utils.GM_Menu({
data: [
    {
    menu_key: "menu_key",
    text: "测试按钮",
    enable: true,
    accessKey: "a",
    autoClose: false,
    showText(text, enable) {
        return "[" + (enable ? "√" : "×") + "]" + text;
    },
    callback(data) {
        console.log("点击菜单,值修改为", data.enable);
    },
    },
],
autoReload: false,
GM_getValue,
GM_setValue,
GM_registerMenuCommand,
GM_unregisterMenuCommand,
});


// 获取某个菜单项的值
GM_Menu.get("menu_key");
> true

// 获取某个菜单项的开启/关闭后显示的文本
GM_Menu.getShowTextValue("menu_key");
> √测试按钮

// 添加键为menu_key2的菜单项
GM_Menu.add({
key:"menu_key2",
text: "测试按钮2",
enable: false,
showText(text,enable){
    return "[" + (enable ? "√" : "×") + "]" + text;
},
callback(data){
    console.log("点击菜单,值修改为",data.enable);
}
});
// 使用数组的方式添加多个菜单,如menu_key3、menu_key4
GM_Menu.add([
{
    key:"menu_key3",
    text: "测试按钮3",
    enable: false,
    showText(text,enable){
    return "[" + (enable ? "√" : "×") + "]" + text;
    },
    callback(data){
    console.log("点击菜单,值修改为",data.enable);
    }
},
{
    key:"menu_key4",
    text: "测试按钮4",
    enable: false,
    showText(text,enable){
    return "[" + (enable ? "√" : "×") + "]" + text;
    },
    callback(data){
    console.log("点击菜单,值修改为",data.enable);
    }
}
]);

// 更新键为menu_key的显示文字和点击回调
GM_Menu.update({
menu_key:{
    text: "更新后的测试按钮",
    enable: true,
    showText(text,enable){
    return "[" + (enable ? "√" : "×") + "]" + text;
    },
    callback(data){
    console.log("点击菜单更新后的测试按钮,新值修改为",data.enable);
    }
}
});

// 删除键为menu_key的菜单
GM_Menu.delete("menu_key");

等...API请看代码

2.5.9

1 year ago

2.6.1

1 year ago

2.6.0

1 year ago

2.5.8

1 year ago

2.5.7

1 year ago

2.5.6

1 year ago

2.5.5

1 year ago

2.5.4

1 year ago

2.5.2

2 years ago

2.5.3

2 years ago

2.4.7

2 years ago

2.4.6

2 years ago

2.4.8

2 years ago

2.5.0

2 years ago

2.5.1

2 years ago

2.4.1

2 years ago

2.4.0

2 years ago

2.4.3

2 years ago

2.4.2

2 years ago

2.4.5

2 years ago

2.4.4

2 years ago

2.3.8

2 years ago

2.3.7

2 years ago

2.3.2

2 years ago

2.3.1

2 years ago

2.3.4

2 years ago

2.3.3

2 years ago

2.3.6

2 years ago

2.3.5

2 years ago

2.2.1

2 years ago

2.2.0

2 years ago

2.2.3

2 years ago

2.2.2

2 years ago

2.2.5

2 years ago

2.2.4

2 years ago

2.2.7

2 years ago

2.2.6

2 years ago

2.3.0

2 years ago

2.1.5

2 years ago

2.2.9

2 years ago

2.2.8

2 years ago

2.1.2

2 years ago

2.1.1

2 years ago

2.1.4

2 years ago

2.1.3

2 years ago

2.0.2

2 years ago

2.0.1

2 years ago

2.0.0

2 years ago

1.9.8

2 years ago

1.9.7

2 years ago

1.9.6

2 years ago

1.9.5

2 years ago

1.9.4

2 years ago

2.1.0

2 years ago

1.9.3

2 years ago

1.9.2

2 years ago

1.9.0

2 years ago

1.8.0

2 years ago

1.6.1

2 years ago

1.6.0

2 years ago

1.5.9

2 years ago

1.5.8

2 years ago

1.5.7

2 years ago

1.5.6

2 years ago

1.5.5

2 years ago

1.5.4

2 years ago

1.5.3

2 years ago

1.7.0

2 years ago

1.4.6

2 years ago

1.4.5

2 years ago

1.4.4

2 years ago

1.5.2

2 years ago

1.5.1

2 years ago

1.5.0

2 years ago

1.4.9

2 years ago

1.4.8

2 years ago

1.4.7

2 years ago

1.4.3

2 years ago

1.4.2

2 years ago

1.3.7

2 years ago

1.3.6

2 years ago

1.4.1

2 years ago

1.4.0

2 years ago

1.3.9

2 years ago

1.3.8

2 years ago

1.3.5

2 years ago

1.3.4

2 years ago

1.3.3

2 years ago

1.3.2

2 years ago

1.3.1

2 years ago

1.3.0

2 years ago

1.2.2

2 years ago

1.2.1

2 years ago

1.2.0

2 years ago

1.1.9

2 years ago

1.1.8

2 years ago

1.1.7

2 years ago

1.1.6

2 years ago

1.1.5

2 years ago

1.1.4

2 years ago

1.1.3

2 years ago

1.1.2

2 years ago

1.1.1

2 years ago

1.1.0

2 years ago

1.0.9

2 years ago

1.0.8

2 years ago

1.0.7

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago