yskj-tools v1.7.8-beta4
最新版本 V1.7.7
更新说明(V1.7.x)
修复_urlDel方法的bug(多个问号的问题) *1.7.7
修复replaceIntranetOrExtranet方法的bug *1.7.6
replaceIntranetOrExtranet方法截取多余的‘/base-api’ *1.7.5
watchIdCard方法身份证号码获取出生年月日和年龄修改正则表达式 *1.7.4
p_fetch方法添加参数timeout:0 *1.7.3
_isInnerIP方法新增内网网段 *1.7.2
新增_conversionUnit&_initIconClass方法 *1.7.1
p_preViewFile新增isFileAddress是否是自定义显示返回地址参数 *1.7.0更新说明(V1.6.x)
修改姓名正则匹配规则 *1.6.9
删除无用的方法templateFn *1.6.7
修复p_preViewFile方法的bug *1.6.6
修复deepClone方法的bug *1.6.2
p_tenantId方法修改为通过主机名获取租户Id *1.6.1
新增一些方法 *1.6.0更新说明(V1.5.x)
修复文件校验提示语 *1.5.9
新增jumpApplication跳转项目的配置方法 *1.5.3
修复小程序上传失效问题 *1.5.1
修改ys-net-type为驼峰 *1.5.0
修复jumpApplication方法bug *1.5.5更新说明(V1.4.x)
所有方法Header头添加ys_net_type参数区分内外网 *1.4.9
p_configCenter方法修改baseUrl *1.4.6
p_configCenter方法新增手动设置内外网参数 *1.4.4
添加p_blobFileDownLoad(流文件下载)参数文件后缀:suffix *1.4.3
重构_thumb *1.4.2
修复_format不能传时间戳的问题 *1.4.1
新增p_blobFileDownLoad(流文件下载)方法 *1.4.0快捷使用
将方法全部注册到vue的原型链上,之后可以使用this来调用
import tools from 'yskj-tools'
for (const keys of Object.keys(tools)) {
Vue.prototype[keys] = tools[keys]
}基础工具类方法
| 方法名 | 方法说明 |
|---|---|
| _query | 截取 URL 参数值 |
| _random | 生成大位随机数 |
| _format | 时间格式化 |
| _unique | JSON 数组去重 |
| _urlDel | 去掉 Url 中的某个参数,参数为需要去除掉的 key |
| _sex | 性别映射 |
| _environ | 判断当前所处的环境 |
| _thumb | 生成缩略图 |
| _isInnerIP | 判断内外网 |
异步工具类方法
| 方法名 | 方法说明 |
|---|---|
| p_tenantId | 获取租户 Id |
| p_encryToken | token 加密 |
| p_decryToken | token 解密 |
| p_initVue | 智慧校园子系统初始化 Vue 之前的操作 |
| p_uploadFile | 文件上传 |
| p_decryUrl | 文件加密转解密 |
| p_configCenter | 智慧校园配置中心 |
| p_blobFileDownLoad | 流文件下载 |
表单验证类方法
| 方法名 | 方法说明 |
|---|---|
| v_name | 中国大陆姓名验证 |
| v_phone | 手机号码验证 |
| v_file | 表单验证 |
| v_idCard | 身份证验证 |
截取 URL 参数值
功能:截取URL参数值
参数:{
paraName:URL参数的键名
noDecode: 是否不解密url, 默认为false, 解密
}
用法:如下let url = "xxx?name=张三";
_query("name"); // 张三
_query("name", true); // %E5%88%98%E6%B8%85时间格式化
功能:时间格式化
参数:{
time: 需要被格式化的时间(支持格式为 时间戳和'2021-04-26 16:00:00', '2021/04/26 16:00:00')
format:返回的时间格式,默认'MM-DD' => 04-26, 还支持'MM-DD hh:mm' => 04-26 15:07 'YY-MM-DD hh:mm:ss' 'YY-MM-DD' 'MM-DD' 'hh:mm:ss' 'hh:mm'
'y' => 2021 'm' => 04 'd' => 26
'week' => 1 (0 表示星期天, 1表示星期一,······)
}
用法:如下_format("2021-4-26"); // 04-26
_format("2021-4-26 14:59:32", "MM-DD hh:mm"); // 04-26 14:59
_format(1619424033104, "MM-DD hh:mm"); // (1619424033104为时间戳) 04-26 16:01
_format(1619424033104, "week"); // 1
_format(new Date(), "y"); // 2021
_format(new Date(), "m"); // 04
_format(new Date(), "d"); // 26json 数组去重
功能:json数组去重
参数: {
arr: json Array
key: 唯一的key名,根据此键名进行去重
}
用法:如下var arr = [
{ id: 1, name: "11" },
{ id: 1, name: "22" },
];
_unique(arr, "id"); // [{id: 1, name: '11'}]中国大陆姓名验证
功能:中国大陆姓名验证
参数:用户输入的姓名
用法:如下v_name("刘德华"); // true
v_name("周杰伦"); // true
v_name("123"); // false
v_name("james"); // false手机号码验证
功能:手机号码验证
参数:用户输入的手机号码
用法:如下v_phone(13188808452); // true
v_phone(11188888888); // false
v_phone(1772645777); // false文件校验
功能:上传前校验文件是否合法
参数:{
file: file文件对象
option: {
type(String): 文件校验类型, 可选值:video,image,excel,word
size(Number): 大小 MB
exportType(String): "object" 默认为''(为空则返回布尔值)
checkFiles(Array):[] checkFiles为 字符串数组 或者 JSON数组
}
}
1. 基础用法:返回布尔值
v_file(file, {
type: 'image',
size: 1
})
// true or false
2. 高级用法:返回对象(checkFiles长度大于1,并且exportType为object)
v_file(file, {
size: 1,
exportType: 'object',
checkFiles:['jpg','txt']
})
// 当checkFiles为纯数组时,size共享
v_file(file, {
exportType: 'object',
checkFiles:[{type:'jpg',size:1},{type:'txt',size:19},{type:'docx',size:12}]
})
// 当checkFiles为json数组时,size不共享,单独判断大小和类型。优先判断大小获取租户 Id
参数: {
logo: 租户标识,默认's_gtn'
baseUrl: 基础请求地址
url: 接口地址, 默认不传递
}
p_tenantId({
baseUrl: 'xxxx',
url: 'xxxx'
}).then((res) => {}).catch((err) => {})token 加/解密
参数: {
baseUrl: 基础请求地址
url: token加/解密接口, 默认不传递,
token: 用户令牌,不加Bearer
}
p_encryToken({
baseUrl: 'xxxx',
token: 'xxxx'
}).then((res) => {}).catch((err) => {})智慧校园子系统统一初始化前的操作
参数: {
baseUrl(*String): 基础请求地址,
url(String): token加/解密接口, 默认不传递,
token(*String): 用户加密令牌,
getInfo(Boolean),是否获取用户信息,默认为false
infoUrl(String):用户信息接口地址,有默认值
}
p_initVue({
baseUrl: 'xxxx',
token: 'xxxx'
}).then((res) => {}).catch((err) => {})性别映射
参数: {
sex: 后端返回的表示性别的值
}
_sex(0) // 男
_sex(1) // 女
_sex(5) // 未知
_sex('female') // 女
_sex('male') // 男
_sex('unknown') // 未知判断当前所处的环境
返回值为:{
miniapp-webview: 微信小程序中的webview,
miniapp: 微信小程序中,
wx: 微信浏览器中
ali: 支付宝浏览器中
browser: 普通浏览器
}生成缩略图
参数: option{
url<*String>: 后端返回的重定向地址(注:不能是重定向过后的)
width<Number>: 缩略图图片的宽度 *1.4.2废除
height<Number>: 缩略图图片的宽度 *1.4.2废除
size<String>: 尺寸: 可选值:small(默认),middle,large *1.4.2新增
}
_thumb(option)文件上传
支持:
1. 多文件上传
2. 图片压缩功能 ^1.2.1 注:小程序压缩请使用wx.chooseImage自带的压缩功能
3. 小程序,Web通用
参数: {
files(*Array): 图片集合(小程序是本地图片路径集合,Web是file对象集合)
options(obj): {
fileType(String): 文件类型,可选值:base64、file(默认)
token(*String)
width(Number): 开启图片压缩时传递,压缩的图片宽度,默认值:500
baseUrl(*String): 应用的基本地址 注意:不要以斜杠开头结尾!!!
uploadBaseUrl(*String):上传的api基本地址 注意:不要以斜杠开头!!!
uploadUrl(String):上传的api地址, 注意:不要以斜杠开头!!!
* 当文件类型为file时,默认为:'alpha/get_upload_url.do',需要先调用此接口获取上传的临时地址
* 当文件类型为base64时,地址为: 'alpha/upload_base64_file.do'
* 小程序上传,默认地址为: 'alpha/get_upload_url_post.do',需要先调用此接口获取上传的临时地址
decryUrl(String): 加密转解密接口,默认为:'alpha/get_file_url_key.do' 注意:不要以斜杠开头!!!
tokenUrl(String): 上传前的token转换接口,默认为:'base/api/file/token' 注意:不要以斜杠开头!!!
maxLength(Number): 最大上传文件个数,默认为9
openCompress(Boolean): 文件上传前是否开启压缩功能,默认为false
filePath(String): 保存的文件名或者相对文件路径(不传时由服务器自动生成文件路径)
temp(Boolean): 是否临时文件,默认为false,当为true时返回的地址以“/temp”开头。当filePath不为空时,此字段无效
}
}
p_uploadFile([],{}).then((res) => {}).catch((err) => {})文件加密转解密
参数: {
decryData: 加密字符串/数组/json数组
options{
key:(String): 加密字段的key值,如果是json数组,则key为必传项
token(*String)
baseUrl(*String): 应用的基本地址 注意:不要以斜杠开头!!!
uploadBaseUrl(*String):上传的api基本地址 注意:不要以斜杠开头!!!
decryUrl(String): 加密转解密接口,默认为:'alpha/get_file_url_key.do' 注意:不要以斜杠开头!!!
tokenUrl(String): 上传前的token转换接口,默认为:'base/api/file/token' 注意:不要以斜杠开头!!!
}
}
p_decryUrl(decryData,{
xxx: xx
}).then((res) => {})智慧校园配置中心
参数: {
baseUrl(*String): 基础请求地址,
url(String): 配置中心接口, 默认不传递,
manually(String): 手动设置内外网 可选值:none(默认:不手动设置)、in(内网)、out(外网)
}
p_configCenter().then((res) => {})流文件下载
参数: {
token(*String): 不带'Bearer'
url(*String): 请求地址
method(String):请求方式,默认get
data(json):接口额外的请求参数
name(string):下载的流文件名字,如果不传递,则返回当前时间为名字
}
p_blobFileDownLoad().then((res) => {})2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago