1.4.4 • Published 2 years ago

rs-commonjs v1.4.4

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

rs-common 公共方法

uuid 通用唯一识别码
/**
 * 通用唯一识别码
 * @rerurns string
 */
getuuid();
seStorage 设置本地存储
/**
 * 设置本地存储
 * @param {*} name 存储字段
 * @param {*} content 存储内容
 * @param {*} storage 存储位置 sessionStorage / localStorage, 默认 sessionStorage
 */
seStorage(name, content, (storage = "sessionStorage"));
参数默认值可选值是否必填说明
nametrue存储字段
contenttrue存储内容
storagesessionStoragesessionStorage / localStoragefalse存储位置
getStorage 获取本地存储
/**
 * 获取本地存储
 * @param {*} name 存储字段
 * @param {*} storage 存储位置 sessionStorage / localStorage, 默认 sessionStorage
 * @returns string | object | array
 */
getStorage(name, (storage = "sessionStorage"));
参数默认值可选值是否必填说明
nametrue存储字段
storagesessionStoragesessionStorage / localStoragefalse存储位置
removeStorage 删除本地存储
/**
 * 删除本地存储
 * @param {*} name 存储字段
 * @param {*} storage 存储位置 sessionStorage / localStorage, 默认 sessionStorage
 */
removeStorage(name, (storage = "sessionStorage"));
参数默认值可选值是否必填说明
nametrue存储字段
storagesessionStoragesessionStorage / localStoragefalse存储位置
formatTime 日期格式化
/**
 * 日期格式化
 * @param {*} date 日期类型 Date | string | null | undefined | number
 * @param {*} format 日期格式  默认 yyyy-MM-dd HH:mm:ss
 * @returns 格式化后的日期字符串
 */
formatTime(date, (format = "yyyy-MM-dd HH:mm:ss"));
参数默认值可选值是否必填说明
dateDate / string / null / undefined / numbertrue日期类型
formatyyyy-MM-dd HH:mm:ssfalse日期格式
formatTimeByStr 将字符串转成日期格式
/**
 * @description: 将字符串转成日期格式
 * @param dateStr 日期字符串 如20220321 -> 2022-03-21
 * @param format  日期格式  默认 yyyy-MM-dd格式 (yyyy-MM-dd HH:mm:ss)
 * @returns 格式化后的日期字符串
 */
formatTimeByStr(dateStr, (format = "yyyy-MM-dd"));
参数默认值可选值是否必填说明
dateStrDate / string / null / undefined / numbertrue日期字符串
formatyyyy-MM-ddyyyy-MM-dd HH:mm:ssfalse日期格式
beforeTime 获取之前的日期
/**
 * 获取之前的日期
 * @param {*} date 日期类型 Date | string | null | undefined | number
 * @param {number} num 小时数
 * @param {string} type 类型, hour/day/month/year
 * @param {string} format 日期格式
 * @returns 前几小时的完整日期
 */
beforeTime(date, num, type, format?);
参数默认值可选值是否必填说明
dateDate / string / null / undefined / numbertrue日期类型
numnumbertrue数量
typedayhour/day/month/yeartrue处理类型,day - 前几天,hour - 前几小时...
formatyyyy-MM-dd HH:mm:ssfalse日期格式,不传则默认返回 Date 格式的数据
deepCopy 深拷贝复杂类型变量
/**
 * 深拷贝复杂类型变量
 * @param {object} target 复杂类型数据 object
 * @returns 新的复杂数据
 */
deepCopy(target);
参数默认值可选值是否必填说明
targettrue目标数据
mergeObjAttr 合并对象
/**
 * 合并对象
 * @param {*} origin 原始对象
 * @param {*} target 目标对象,需要被合并的对象
 * @param {*} rtNewObj 是否返回一个新对象,默认为false
 * @param {*} level 当前遍历层级,属于内部参数,调用时不必传入
 * @returns
 */
mergeObjAttr(origin, target, (rtNewObj = false), (level = 1));
参数默认值可选值是否必填说明
origintrue原始对象
targettrue目标对象,需要被合并的对象
rtNewObjfalsefalse是否返回一个新对象,默认为 false
level1false当前遍历层级,属于内部参数,调用时不必传入
mergeArray 合并数组
/**
 * 合并数组
 * 这个合并数组并不是一般的合并,它跟普通的合并区别在于如果大家都是对象则合并属性,参考mergeObjAttr方法
 * @param origin: 原始数组
 * @param target: 目标数组
 * @param rtNewArray: 是否返回一个新数组,默认为false
 * @param level: 当前遍历层级,属于内部参数,调用时不必传入
 */
mergeArray(origin, target, (rtNewArray = false), (level = 1));
参数默认值可选值是否必填说明
origintrue原始数组
targettrue目标数组,需要被合并的对象
rtNewArrayfalsefalse是否返回一个新数组,默认为 false
level1false当前遍历层级,属于内部参数,调用时不必传入
getDataType 获取数据类型
/**
 * 获取数据类型
 * @param {*} data 数据
 * @param {boolean} isStatic 是否严格, 默认false, 即在object下, 只区分array, 不做Date等的区分
 * @returns 返回数据类型 object/array/string/....
 */
getDataType(data);
参数默认值可选值是否必填说明
dataanytrue目标数据
isStaticfalsebooleanfalse是否返回严格的数据类型,默认 false, 即在 object 下, 只区分 array, 不做 Date 等的区分
cleanData 规范字典数据
/**
 * 规范字典数据
 * @param {*} dic {Object} key对象 如{value:"code",label:"name"} 即code->value name->label,意思是将原数据中code字段的数据赋值给value字段
 * @param {*} data {Array}  需处理的数据
 * @param {*} keep {Array}  是否保留原数据的其他字段
 * @param {*} childrenName {Object} 子数据的key值替换  如{'children':'childs'}  将原数据中的childs转成children
 * @returns array
 */
cleanData(data, dic, (keep = false), (childrenName = { children: "children" }));
参数默认值可选值是否必填说明
data[]true需处理的数据
dic{value: dataKey, label: dataKey}truekey 对象
keepfalsefalse是否保留原数据的其他字段
childrenName{'children': dataKey}false子数据的 key 值替换
flatData 扁平化数组对象数据
/**
 * 扁平化数组对象数据, 将树结构 -》 列表数据
 * @param {Array} data   需处理的数据
 * @param {Object} dic  key对象 如{resule:"code",label:"name"} 即code->value name->label 为{}则不存在转化字段
 * @param {String} childName  子集的集合字段
 * @returns array 一维数组
 */
flatData(data, (dic = {}), (childName = "children"));
参数默认值可选值是否必填说明
data[]true需处理的数据
dic{}{resultKey: dataKey, ...}falsekey 对象
childNamechildrenfalse子集的集合字段
arrToObj 将数组转成对象
/**
 * @param {*} data 数组数据
 * @param {*} dataKey 以数组中哪一个字段的数据作为对象的key
 * @param {Object} dic  key对象 如{resultKey: dataKey,...}  为{}则不存在转化字段
 * @returns object
 */
arrToObj(data, (dic = {}), (childName = "children"));
参数默认值可选值是否必填说明
data[]true数组数据
dataKeydata 里面任意的 keytrue以数组中哪一个字段的数据作为对象的 key
dic{}{resultKey: dataKey,...}false转化字段配置, 为{}则不存在转化字段
listToTree 把列表数据转换成树结构, 列表数据必须有父节点标识
/**
 * 把列表数据转换成树结构, 列表数据必须有父节点标识
 * @param {*} data 列表数据
 * @param {*} parentId 父节点的唯一标识数据
 * @param {*} dic {id: dataKey, parentId: dataKey2,...}
 * @param {*} level
 * @returns array
 */
listToTree(data, (parentId = null), dic, (level = 0));
参数默认值可选值是否必填说明
data[]true需处理的数据
parentIdtrue父节点的 id
dic{id: dataKey, parentId: dataKey}truekey 对象
level{value: dataKey, label: dataKey}true层级
cleanDataByChart 处理 echarts 的数据
/**
 * 处理echarts的数据
 * @param {*} data object/array
 * @param {*} dic {resultKey1: dataKey1, resultKey2: {value: dataKey2, ...}}
 * @returns {object}
 */
cleanDataByChart(data, dic);
参数默认值可选值是否必填说明
data[]array/objecttrue需处理的数据
dic{resultKey1: dataKey1, resultKey2: {value: dataKey2, ...}}truekey 对象
dealWithData 处理判空数据
/**
 * 处理判空数据
 * @param {number | null | undefined | string} data 数据
 * @param {string} unit 单位
 * @param {object} base {
 *   emptyArr: [], - 判空的集合,不传则默认为[null, undefined]
 *   abs: false,  - 是否取绝对值
 *   subValue: "-", - 数据为空时替代的文本, 不传则默认为 '-'
 *   subUnit: '',  - 数据为空时替代的单位,不传则使用unit
 *   fn: null - 在判断emptyArr之后判断的方法
 * }
 * @returns {string|*}
 */
dealWithData(data, unit, base);
参数默认值可选值是否必填说明
datanumber / null / undefined /stringtrue需处理的数据
unitfalse单位, 默认为''
base{ emptyArr: [], abs: false, subValue: "-", subUnit: '', fn: () => '' }false配置
formatNumber 格式化数字
/**
 * 格式化数字
 * @param {number | null | undefined | string} data 数据
 * @param {number} fixedNum 保留的小数位数,默认不处理
 * @param {string} unit 单位
 * @returns {string|*}
 */
formatNumber(num, fixedNum, unit);
参数默认值可选值是否必填说明
datanumber / null / undefined /stringtrue需处理的数据
fixedNumfalse保留的小数位数,默认不处理
unit''false单位
inRange 判断数据是否在区间中
/**
 * 判断数据是否在区间中
 * @param {number} number 目标数据
 * @param {string} range 比较范围 []/[)/()/(]
 * @param {string} compareType 判断类型 取值: in - 区间内 out - 区间外
 *
 * @returns boolean
 */
inRange(number, range, (compareType = "in"));
参数默认值可选值是否必填说明
numbernumber / null / undefined /stringtrue目标数据
range'0,10'/'0,10)'/'(0,10)'/'(0,10'true比较范围
compareTypeinin/outfalse判断类型 in - 区间内 out - 区间外
equals 判断数据是否相等
/**
 * 判断数据是否相等
 * @param {*} data1 数据1
 * @param {*} data2 数据2
 * @param {*} compare 比较的基准 ==/===
 * @returns boolean
 */
equals(data1, data2, (compare = "=="));
参数默认值可选值是否必填说明
data1number / null / undefined /string / objecttrue数据 1
data2number / null / undefined /string / objecttrue数据 2
compare==== / ===false比较的基准
downloadFile 导出文件
/**
 * 导出文件
 * @param blob 文件|blob类型
 * @param downloadName 导出的文件名称
 * @param type 文件扩展名 | 默认xls
 * @param defDate 文件名后面是否要加上日期 | 默认true
 */
downloadFile(blob, downloadName, (type = "xls"), (defDate = true));
参数默认值可选值是否必填说明
blobblobtrue文件二进制流
downloadNamestringtrue导出的文件名称
typexlsfalse文件扩展名
defDatetruefalse文件名后面是否要加上日期
filterAsyncRoutes 获取权限路由
/**
 * 获取权限路由
 * @param routes  本地配置的路由资源
 * @param resource  后端返回的权限资源
 * @returns {[]}
 */
filterAsyncRoutes(routes, resource);
参数默认值可选值是否必填说明
routes[]true本地配置的路由资源
resource[]true后端返回的权限资源
getRealApi 获取目标 api
/**
 * 获取api
 * @param {*} apiStr api组装的字符串
 * @param {*} apis   api集合
 */
getRealApi(apiStr, apis);
参数默认值可选值是否必填说明
apiStr'xxx.xxxx'stringtrueapi 组装的字符串
apis{xxx: {xxxx: ''}}objecttrueapi 集合
debounce 防抖
/** 防抖函数
 * @param {Function} func
 * @param {number} wait
 * @param {boolean} immediate
 * @param {object} context
 * @return {Function} 事件处理函数
 */
debounce(fn, delay, immediate, context);
参数默认值可选值是否必填说明
fn() => {}functiontrue执行的方法
delay1000numbertrue延时时间
immediatefalsebooleanfalse是否立即执行
contextthis上下文对象
throttle 节流函数
/** 防抖函数
 * @param {Function} func
 * @param {number} wait
 * @param {boolean} immediate
 * @param {object} context
 * @return {Function} 事件处理函数
 */
throttle(fn, (delay = 200), (immediate = false), (context = this));
参数默认值可选值是否必填说明
fn() => {}functiontrue执行的方法
delay1000numbertrue延时时间
immediatefalsebooleanfalse是否立即执行
contextthis上下文对象
initPromise 设置微任务事件
/** 设置微任务事件
 * @param {Function} callback
 */
initPromise(callback);
参数默认值可选值是否必填说明
callback() => {}functiontrue执行的方法
1.2.0

2 years ago

1.1.0

2 years ago

1.4.4

2 years ago

1.4.3

2 years ago

1.4.2

2 years ago

1.4.1

2 years ago

1.4.0

2 years ago

1.3.0

2 years ago

1.0.0

2 years ago