更新记录

1.0.1(2024-06-14)

修复最顶级默认选中报错bug

v1.0.0(2024-06-07)

v1.0.0


平台兼容性

Vue2 Vue3
×
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
× × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × × × × × × ×

structure-cascade

  • 树形结构数据选择组件。
  • 适用于一些多级部门、组织架构类的数据选择。
  • 根据实际开发需求整理出来的,有需要的可以进行二次开发。
  • 最新的项目示例代码可在GitHub获取。

使用方法

script 中引用组件

import structureCascade from '@/components/structure-cascade/structure-cascade.vue'
export default {
  components: {
    structureCascade
  }
}

template 中使用组件

<structure-cascade
    ref="strCascade"
    v-model="strResults"
    topTitle="组织架构"
    valueField="id"
    labelField="name"
    :checkIcon="require('@/static/icons/icon_gou.png')"
    :moreIcon="require('@/static/icons/ico_more@2x.png')"
    :treeData="treeData">
</structure-cascade>

Props 参数说明

参数名 类型 默认值 说明
value / v-model Array [] 绑定值
topTitle String 组织架构 头部顶级索引名称
treeData Array [] 树形结构数据(参考如下Demo)
isRadio Boolean true 是否为单选
selectMax Number 0 多选时最大选择数,仅在isRadiofalse时生效(0: 不限)
valueField String id 自定义value属性名
labelField String name 自定义label属性名
checkIcon String '' 数据勾选时的icon展示
moreIcon String '' 当前节点存在字节点时的icon展示

Methods 组件内方法

方法名 说明 参数 使用
getFilterData(keyword, treeData) 根据关键词模糊查询,返回一维数组格式的节点集 keyword:关键词,对应各节点的labelField字段。 treeData:树形结构数据(不传则默认为treeData) this.$refs.strCascade.getFilterData('一级')

Notes 注意事项

  • 该组件尚不支持父子节点联动选中。
  • 图片路径请使用require,例如::checkIcon="require('@/static/icons/icon_gou.png')"
  • 设置默认值选中时,需要valueFieldlabelField两个属性参数。
  • 树形结构数据中子节点需要有parentId属性参数,有默认值选中时回显需要使用到。
  • 如果对您有帮助,请鼓励支持一下,

Demo 代码示例

<template>
  <view>
    <structure-cascade
      ref="strCascade"
      v-model="strResults"
      topTitle="组织架构"
      valueField="id"
      labelField="name"
      :checkIcon="require('@/static/icons/icon_gou.png')"
      :moreIcon="require('@/static/icons/ico_more@2x.png')"
      :treeData="treeData">
    </structure-cascade>
  </view>
</template>

<script>
  import structureCascade from '@/components/structure-cascade/structure-cascade.vue'
  export default {
    components: {
      structureCascade
    },
    data() {
      return {
        treeData: [
          {
            id: 1,
            name: '一级_1',
            children: [
              {
                id: 2,
                name: '二级_1-1',
                parentId: 1
              },
              {
                id: 3,
                name: '二级_1-2',
                parentId: 1
              }
            ]
          }
        ], // 树形结构
        strResults: [
          {
            id: 3,
            name: '二级_1-2'
          }
        ] // 默认选中回显
      }
    }
  }
</script>

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问