当前位置: 首页 > 编程笔记 >

vue 监听 Treeselect 选择项的改变操作

司空瑾瑜
2023-03-14
本文向大家介绍vue 监听 Treeselect 选择项的改变操作,包括了vue 监听 Treeselect 选择项的改变操作的使用技巧和注意事项,需要的朋友参考一下

项目中使用 Treeselect 时,需要获取选项的变化从而触发别的事件,所以需要监听Treeselect 所选择的值。

我使用了watch 来监听 treeselect 绑定的 model ,如果 model 的值发生变化就触发 currDeptChange 事件。

<el-form-item prop="deptId"
          :label="$t('deviceManage.device.table.deptId')+':'">
    <treeselect :options="deptTree"
          :normalizer="normalizer"
          v-model="formData.deptId"
          :placeholder="$t('deviceManage.device.dlg.deptId')">
    </treeselect>
</el-form-item>

监听 Treeselect 选择项的改变

watch: {
  // 监听deptId
  'formData.deptId': 'currDeptChange'
},
methods: {
  currDeptChange(val) {
   console.log('currDeptChange', val)
   if (val) {
    this.queryStaff()
   }
  },
  queryStaff() {}
}

补充知识:vue Treeselect 树形下拉框 : 获取选中节点的ids和lables

API: https://vue-treeselect.js.org/#events

1.ids: 即value

1.lable: 需要用到方法:@select(node,instanceId) 和 @deselect(node,instanceId)

<template>
<treeselect ref="DRHA_EFaultModeTree"
       v-model="DRHA_EFaultModeTree_value"
       :multiple="true" 
       :options="DRHA_EFaultModeTree_options"
       :flat="true"
       :show-count="true"
       :disable-branch-nodes="true"
       :searchable="false"
       @select="DRHA_EFaultModeTree_handleSelect"
       @deselect="DRHA_EFaultModeTree_handleDeSelect"
       placeholder=" 请选择..."/>
 
 <p>lables:{{DRHA_EFaultModeTree_lables}}</p>
 <p>ids:{{DRHA_EFaultModeTree_value}}</p>
 
</template>
 
<script>
 // import the component
 import Treeselect from '@riophae/vue-treeselect'
 // import the styles
 import '@riophae/vue-treeselect/dist/vue-treeselect.css' 
 
 export default {
  components: { Treeselect },
  data() {
   return {
    
    DRHA_EFaultModeTree_value: null,
    DRHA_EFaultModeTree_lables: [],
    DRHA_EFaultModeTree_options: [ {
     id: '1',
     label: 'Fruits',
     children: [ {
      id: '1-1',
      label: 'Apple ?',
      isNew: true,
     }, {
      id: '1-2',
      label: 'Grapes ?',
     }, {
      id: '1-3',
      label: 'Pear ?',
     }, {
      id: '1-4',
      label: 'Strawberry ?',
     }, {
      id: 'watermelon',
      label: 'Watermelon ?',
     } ],
    }, {
     id: 'vegetables',
     label: 'Vegetables',
     children: [ {
      id: 'corn',
      label: 'Corn ?',
     }, {
      id: 'carrot',
      label: 'Carrot ?',
     }, {
      id: 'eggplant',
      label: 'Eggplant ?',
     }, {
      id: 'tomato',
      label: 'Tomato ?',
     } ],
    } ],
   };
  },
  mounted: function(){
    
  },
  methods: {
    DRHA_EFaultModeTree_handleSelect(node,instanceId){
    console.log("Select");
    this.DRHA_EFaultModeTree_lables.push(node.label);
   },
   DRHA_EFaultModeTree_handleDeSelect(node,instanceId){
    console.log("DeSelect");
    for (let i = 0;i<this.DRHA_EFaultModeTree_lables.length;i++){
     if(node.label == this.DRHA_EFaultModeTree_lables[i]){
      this.DRHA_EFaultModeTree_lables.splice(i,1);
     }
    }
   },
  }
 };
</script>

以上这篇vue 监听 Treeselect 选择项的改变操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • 引入 import { createApp } from 'vue'; import { TreeSelect } from 'vant'; const app = createApp(); app.use(TreeSelect); 代码演示 单选模式 item 为分类显示所需的数据,数据格式见下方示例。main-active-index 表示左侧高亮选项的索引,active-id 表示右侧高

  • 使用指南 组件介绍 引入方式 import { TreeSelect } from 'feart'; components: { 'fe-tree-select': TreeSelect } 代码演示 <fe-tree-select> </fe-tree-select> API Props 参数 说明 类型 默认值 dataSource 分类显示所需的数据 Array [] text

  • 我已经找了一段时间了,但我没有找到任何有效的东西。我希望这样做,以便每次用户单击我列表中的新客户机时,客户机的详细信息都会出现在字段中(请参见下面的屏幕截图):

  • 本文向大家介绍vue treeselect获取当前选中项的label实例,包括了vue treeselect获取当前选中项的label实例的使用技巧和注意事项,需要的朋友参考一下 我就废话不多说了,大家还是直接看代码吧~ 结果如下所示,可以获取到当前选中项的信息: 补充知识:vue中element-ui 树形控件-树节点的选择(选中当前节点,获取当前id并且获取其父级id) Element-ui官

  • 我打算写一个程序,我将给用户一个选择从8*8矩阵。因为我的声誉低于10,我不能包括图像,但请放心,这只是一个正常的8*8矩阵。我计划在我的Java程序中用8*8=64个单选按钮可视化它。用户一次只能选择一个单选按钮,所以这意味着所有64个按钮都属于同一个按钮组。 现在,我如何管理动作监听器?为64个单选按钮中的每一个设置64个单独的动作监听器是不可能的(真的很无聊)。由于所有64个单选按钮都在同一

  • 本文向大家介绍Vue开发之watch监听数组、对象、变量操作分析,包括了Vue开发之watch监听数组、对象、变量操作分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Vue开发之watch监听数组、对象、变量操作。分享给大家供大家参考,具体如下: 1.普通的watch 2.数组的watch:深拷贝 3.对象的watch 4.对象的具体属性的watch: 希望本文所述对大家vue.js程