更新记录

1.0.2(2023-01-16)

修复部分bug

1.0.1(2022-06-06)

追加通用类API toast

1.0.0(2022-06-06)

增加通用类,数字类,验证类API

查看更多

平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 3.1.0 app-vue app-nvue
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari

m-tools

包含了一些js常用代码的小型工具包

引入&使用

// main.js
import Vue from 'vue'
import mTools from '@/uni_modules/m-tools'
Vue.use(mTools)

在业务中通过使用 uni.$mt 可以使用里面的工具方法:

uni.$mt.isEmpty([]); // true
uni.$mt.isChinese("恭喜发财"); // true
uni.$mt.round(0.1+0.2); // 0.3
uni.$mt.num2K(1580); // 1.6k
uni.$mt.num2M(1580); // 1,580
uni.$mt.deepClone({a:{b:{c:1}}}) // {a:{b:{c:1}}}

通用类API

去除空格

uni.$mt.trim(" 123 456 "); // "123 456"
uni.$mt.trim(" 123 456 ","left"); // "123 456 "
uni.$mt.trim(" 123 456 ","right"); // " 123 456"
uni.$mt.trim(" 123 456 ","all"); // "123456"

深度拷贝

let obj1 = {a:{b:{c:1}}}
uni.$mt.deepClone(obj1); // {a:{b:{c:1}}}
let obj2 = {d:100}
uni.$mt.deepClone(obj1,obj2); // {d:100,a:{b:{c:1}}}

获取URL参数

uni.$mt.getUrlParam("https://xxx.com?id=1&age=18"); // {id: '1', age: '18'}

获取随机id值(长度最高为10)

uni.$mt.getRandomId();  // vh6o5gv3ng
uni.$mt.getRandomId(6); // k8jrq8

显示toast信息

默认显示2s,可以手动设置,单位是毫秒

uni.$mt.toast("success"); 
uni.$mt.toast("success",1500); 

防抖

传两个参数,第一个是方法,第二个是间隔(默认为1000ms)

uni.$mt.debounce(function(){
    // 执行函数
},1000)
<button @click="$mt.debounce(handleSubmit, 500)">submit</button>

节流

传两个参数,第一个是方法,第二个是间隔(默认为1000ms)

uni.$mt.trottle(function(){
    // 执行函数
},1000)
<button @click="$mt.trottle(handleSubmit, 500)">submit</button>

数字类API

数字换算单位(如1.1k,1.5w)

uni.$mt.num2K(158);   // 158
uni.$mt.num2K(1580);  // 1.6k
uni.$mt.num2K(15800); // 1.5w

数字换算单位(如1,000)

uni.$mt.num2M(1580);    // 1,580
uni.$mt.num2M(1580000); // 1,580,000

获取随机值

uni.$mt.random();      // 0.5390831595774499
uni.$mt.random(30);    // 30.604481991663793
uni.$mt.random(30,35); // 34.71490308939509

精确小数

uni.$mt.round(0.1+0.2); // 0.3

验证类API

作用 API
是否为空 isEmpty
是否为整数 isDigits
是否为手机号 isMobile
是否为固定电话 isLandline
是否为电子邮箱 isEmail
是否为身份证号码 isIdCard
是否为中文 isChinese
是否为字母 isLetter
是否为字母或者数字 isEnOrNum
是否为URL格式 isUrl
是否图片格式 isImage
是否视频格式 isVideo
uni.$mt.isEmpty([]); // true
uni.$mt.isEmpty({}); // true
uni.$mt.isEmpty(null); // true
uni.$mt.isEmpty([1]); // false
uni.$mt.isImage("xxx.jpeg"); // true
uni.$mt.isImage("xxx.mp4");  // false
uni.$mt.isVideo("xxx.mp4");  // true

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问