1.4.4 • Published 11 months ago

rs-commonjs v1.4.4

Weekly downloads
-
License
ISC
Repository
-
Last release
11 months 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

12 months ago

1.1.0

12 months ago

1.4.4

11 months ago

1.4.3

11 months ago

1.4.2

12 months ago

1.4.1

12 months ago

1.4.0

12 months ago

1.3.0

12 months ago

1.0.0

1 year ago