Skip to content
广告位招租

优质广告位诚邀合作

本广告位曝光量正火速攀升,用户触达规模呈爆发式增长!现向品牌开放合作,趁曝光增长红利期,抓紧机会拿下,让您的品牌借势破圈!

--总浏览量(次)
--总计访客(人)

树形字典方法

一些和树形字典数据相关的方法,以下方法均为promise异步的方法。

getTreeLabelByCode

通过树形层级value字段和字典数据类型获取该value对应的树形层级label

js
const defaultOptions = {
  defaultVal: "", // 找不到时的默认值
  // arr为该值获取到的层级关系对象数组  treeSetting为字典包配置的treeSetting
  formatFun: (arr, treeSetting) => {
    return arr.map((item) => {
      return item[treeSetting.labelField]
    }).join("/")
  },
  treeSetting: {...dictConfig.treeSetting} // 默认值为 字典包配置项的 treeSetting
}
/**
 * val: 树形层级value字段
 * dictType: 字典数据类型
 * options: 配置项
 */
getTreeLabelByCode( val, dictType, options)

getTreeCodeByLabel

通过树形层级label字段和字典数据类型获取该label对应的树形层级value

js
const defaultOptions = {
  defaultVal: "", // 找不到时的默认值
  // arr为该值获取到的层级关系对象数组  treeSetting为字典包配置的treeSetting
  formatFun: (arr, treeSetting) => {
    return arr.map((item) => {
      return item[treeSetting.valueField]
    }).join("/")
  },
  treeSetting: {...dictConfig.treeSetting} // 默认值为 字典包配置项的 treeSetting
}
/**
 * label: 树形层级label字段
 * dictType: 字典数据类型
 * options: 配置项
 */
getTreeCodeByLabel( label, dictType, options)

getTreeLabelByCodes

通过多个树形层级value字段和字典数据类型获取多个value对应的树形层级label

js
const defaultOptions = {
  defaultVal: "", // 找不到时的默认值
  // 内层的格式化 
  formatFunIn: (arr, treeSetting) => {
    return arr.map((item) => {
      return item[treeSetting.labelField]
    }).join("/")
  },
  // 配置项 默认值为字典包的配置项
  treeSetting: {...dictCOnfig.treeSetting},
  // 外层的格式化 多个值 的拼接
  formatFunOut: (arr) => {
    return arr.join(",")
  },
  // 多个值且为字符串时的分隔符
  spacer: ","
}

/**
 * vals: 树形层级value字段(数组或字符串)
 * dictType: 字典数据类型
 * options: 配置项
 */
getTreeLabelByCodes(vals, dictType, options)

getTreeCodeByLabels

通过多个树形层级label字段和字典数据类型获取多个label对应的树形层级value

js
const defaultOptions = {
  defaultVal: "", // 找不到时的默认值
  // 内层的格式化 
  formatFunIn: (arr, treeSetting) => {
    return arr.map((item) => {
      return item[treeSetting.valueField]
    }).join("/")
  },
  // 配置项 默认值为字典包的配置项
  treeSetting: {...dictCOnfig.treeSetting},
  // 外层的格式化 多个值 的拼接
  formatFunOut: (arr) => {
    return arr.join(",")
  },
  // 多个值且为字符串时的分隔符
  spacer: ","
}

/**
 * labels: 树形层级label字段(数组或字符串)
 * dictType: 字典数据类型
 * options: 配置项
 */
getTreeCodeByLabels(labels, dictType, options)

温馨提示

上述方法均为promise异步模式,不可在页面上(即template模板里面)直接使用此方法来显示数据。

可在页面上使用的方法

字典包提供了一些方法,可用于在页面上直接使用。

如需在页面上(即template模板里面)使用,请使用以下方法:

getTreeLabelByCodeFilter 代替 getTreeLabelByCode,参数一致

getTreeCodeByLabelFilter 代替 getTreeCodeByLabel,参数一致

getTreeLabelByCodesFilter 代替 getTreeLabelByCodes,参数一致

getTreeCodeByLabelsFilter 代替 getTreeCodeByLabels,参数一致

微信公众号【爆米花小布】

0%

置顶

置顶