Skip to content

对象类 - ikObject

针对对象操作的一些方法

引入方式

import { ikObject } from 'iking-utils'

深度合并 - deepMerge

合并两个对象的字段返回一个最终的对象 返回{object} -合并的对象

script
deepMerge(src: any = {}, target: any = {}): T

参数说明

参数值类型参数值说明
srcany源对象
targetany与源合并的目标对象

示例

vue
const formData = ikObject.deepMerge(userForm.value, { name: '2134324' })
<!-- console.log(formData)
{
  adminUser: false,
  avatar: "",
  birthday: "",
  deptIds: [],
  email: "",
  locked: false,
  name: "2134324",
  nickname: "",
  phone: "",
  postIds: [],
  roleIds: [],
  sex: "MALE",
  username: "",
}
 -->

将对象作为参数添加到URL - setObjToUrlParams

接收一个基URL和一个对象作为参数,并将对象作为参数添加到URL中。返回{string} -修改的URL与添加的参数。

script
setObjToUrlParams(baseUrl: string, obj: any): string

参数说明

参数值类型参数值说明
baseUrlString要添加参数的基础URL。
objany包含将作为参数添加到URL的键值对的对象。

示例

vue
  const url = 
  ikObject.setObjToUrlParams('https://www.baidu.com', { 
      name: 'xianyu', 
      id: 'd342qwwe233244' 
  })
  <!-- console.log(url) 
  https://www.baidu.com?name=xianyu&id=d342qwwe233244
  -->

打开一个新窗口 - openWindow

打开一个带有指定URL和选项的新窗口。

script
openWindow(url: string, opt?: 
 { 
    target?: TargetContext | string;
    noopener?: boolean; 
    noreferrer?: boolean 
  },)

参数说明

参数值类型参数值说明
urlString在新窗口中打开的url。
optany自定义窗口行为的可选参数。
opt.targetTargetContext新窗口的目标上下文或名称。默认为'__blank'。
opt.noopenerboolean指定新窗口是否应该具有'noopener'属性。默认为true。
opt.noreferrerboolean指定新窗口是否应该具有'noreferrer'属性。默认为true。

示例

vue
  ikObject.openWindow('https://www.baidu.com')

对象添加对象 - forofObj | forof

为给定对象添加一个迭代器,以启用“for…”“循环。返回{any} -添加迭代器的修改对象。如果参数不是对象则抛出错误。

script
forofObj(obj: Object): any

参数说明

参数值类型参数值说明
objObject要修改的对象。

示例

vue
  const iterableObj = ikObject.forofObj({ a: 1, b: 2, c: 3 })
  for (const value of iterableObj)
    <!-- console.log(value)
    ['a', 1]
    ['b', 2]
    ['c', 3]
     -->