常用工具 Utils

  • 为了方便开发者进行数据的类型校验、获取环境信息、数据转换等操作,框架就这些问题,已经封装出来了三类的常用工具API,开发者可以根据各自需求自行使用即可;

类型校验API

是否为空

  • value为空时,返回true,否则返回false
// value == null || value === '' || value == undefined
cb.utils.isEmpty(value)

是否为空对象

  • value为空对象时,返回true,否则返回false
cb.utils.isEmptyObject(value)

对象比较

  • value1对象和value2对象相同时,返回true,否则返回false
cb.utils.compareObject(value1, value2)

是否数组

  • arr是数组时,返回true,否则返回false
cb.utils.isArray(arr)

是否对象

  • obj是对象时,返回true,否则返回false
cb.utils.isPlainObject(obj)

是否是 <%.*%> 型数据

  • value为 <%.*%> 型数据时,返回true,否则返回false
cb.utils.isMatchValue(value)

是否IE

  • 判断是否是IE浏览器,是IE浏览器,返回true,否则返回false
cb.utils.isIE()

是否Edge

  • 判断是否是IE新版Edge浏览器,是IE新版Edge浏览器,返回true,否则返回false
cb.utils.isEdge()

环境信息API

判断是否专属化环境

  • 判断是否是专属化环境,是返回true,否则返回false
cb.utils.isPremisesEnv()

获取当前环境

  • 获取当前环境
cb.utils.getServerEnv()

是否本地访问

  • 判断是否file协议,是返回true,否则返回false
cb.utils.isFileProtocol()

获取服务地址

  • 获取服务地址,需要转发的请求地址
cb.utils.getServiceUrl()

获取Node服务地址

  • 获取Node服务地址,不需要转发的请求地址
cb.utils.getNodeServerUrl()

修改服务地址

  • url为修改的目标服务地址
cb.rest.setServiceUrl(url)

// 将服务地址更新成Node服务地址,解决CN使用MDF功能时的跨域问题
cb.rest.setServiceUrl(cb.utils.getNodeServerUrl())

获取MDF服务前缀

  • 获取MDF服务前缀,即"/mdf-node"
cb.utils.getWindowBaseUrl()

获取获取业务中台域名

  • 业务中台地址
cb.utils.getMainOriginUrl()

数据转换API

JSON字符串转JSON对象

cb.utils.stringToJSON(value)

把科学技术法转换成数字字符串

cb.utils.getFullNum(num)

删除对象中空值或空对象引用

cb.utils.removeEmplyAttr(obj) // 修改原值

删除对象/json字符串中元素

  • target:对象/json字符串,key:对象中要删除的key值
cb.utils.omitAttr(target, key) // 返回删除后的新数据

URL格式化

  • 可以动态添加、获取、删除url后面的参数信息
// url || location.search
const qry = new cb.utils.queryString(url)
  • 参数说明:
API 含义 类型 结果
qry.set(key, value) 添加参数 key: string
qry.get(key) 获取query里的参数 string
qry.del(key) 删除query里的参数 String
qry.has(key) 判断参数是否存在 String Boolean
qry.toStr() 拼接query里的参数 String ?a=1&b=2

对象的拷贝/合并

  • 对象进行深浅拷贝以及深浅合并
// 对象的拷贝
cb.utils.extend(Boolean,target,obj)
// 对象obj1、obj2合并到新对象中
cb.utils.extend(Boolean,{},obj1,obj2)
// 对象obj2合并到obj1对象中,如果obj1不是对象 返回一个合并的新对象  
cb.utils.extend(obj1,obj2)
  • 参数说明:
API 含义 类型 结果
Boolean 是否深拷贝/合并 Boolean true/false
target 拷贝类型 {}/[] {}/[]
obj 需要拷贝/合并的对象 Object/Array

获取信息API

获取用户信息

cb.utils.getUser(domainKey)

获取租户ID

cb.utils.getTenantId(domainKey)

获取token

cb.utils.getToken(domainKey)

获取当前日期

cb.utils.getNowFormatDate() // "2023-02-07 16:24:22"

获取字符串长度

cb.utils.getValueLength(text)//  text|String
Copyright © 用友 -【生态技术部】 2022-2023 all right reserved,powered by Gitbook修订时间: 2023-02-09 18:06:39

results matching ""

    No results matching ""