element-ui 实现输入框下拉树组件功能

 更新时间:2024年05月25日 11:04:58   作者:宝子卡粉  
这篇文章主要介绍了element-ui 实现输入框下拉树组件功能,使用element-ui的 el-input,el-tree,el-popover组件组合封装,本文结合示例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧

用element-ui的 el-input,el-tree,el-popover组件组合封装

@import url("//unpkg.com/element-ui@2.15.14/lib/theme-chalk/index.css");
<script src="//unpkg.com/vue@2/dist/vue.js"></script>
<script src="//unpkg.com/element-ui@2.15.14/lib/index.js"></script>
<div id="app">
  <el-popover
    placement="bottom"
    width="350"
    trigger="click">
    <el-tree
       style="width:300px"
       ref="tree"
       :data="options"
       :check-strictly="false"
        show-checkbox
        node-key="id"
        :default-expanded-keys="[]"
        :default-checked-keys="[]"
        :props="{
           children: 'children',
           label: 'name'
         }"
         @check-change="handleCheckChage"
         @node-click="handleNodeClick"
     >
    </el-tree>
        <el-input slot="reference" 
          style="width:380px"
         v-model="value.name" 
         placeholder="节点" 
         clearable 
         @clear="handleIptClear">
       </el-input>
  </el-popover>
</div>
var Main = {
    data() {
      return {
        options: [
          {id:'1', name: '1',
           children:[
             {id:'11', name: '11'},
             {id:'12', name: '12'}
           ]
          },
          {id:'2', name: '2'}
        ],
        value:{id:'', name: ''}
      }
    },
    methods: {
      // 清空输入框内容
        handleIptClear(){
            this.$refs.tree.setCheckedNodes([])
            this.value.id = ''
            this.value.name = ''
        },
        // checkbox被选中或取消选中
        handleCheckChage(arg1, arg2, arg3){
            const seltedNodes = this.$refs.tree.getCheckedNodes()
            const ids = seltedNodes.map(n => n.id)
            const names = seltedNodes.map(n => n.name)
            this.value.id = ids
            this.value.name = names
        },
        // 节点被点击
        handleNodeClick(arg1, arg2, arg3){
            console.log('nodes:', arg1, arg2, arg3)
        },
    }
  };
var Ctor = Vue.extend(Main)
new Ctor().$mount('#app')

可以根据函数方法拿到里面的参数,实现多选节点效果

到此这篇关于element-ui 实现输入框下拉树组件功能的文章就介绍到这了,更多相关element-ui 输入框下拉树组件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • JavaScript 封装Ajax传递的数据代码

    JavaScript 封装Ajax传递的数据代码

    在使用Ajax传输数据时,少不了对传递的字符进行转码,我的实现方式是将需要传递的数据暂存到一js Bean中,将js Bean放到Array中,生成传输参数时对Array中的jsBean进行分解,得到相应属性信息并编码..
    2009-06-06
  • 使用JavaScript实现图片的自动轮播

    使用JavaScript实现图片的自动轮播

    在网站开发中,经常会遇到需要展示多张图片并自动切换的需求,这就需要使用JavaScript来实现图片的自动轮播功能,本文将通过一个简单的例子,演示如何用JavaScript实现图片的自动轮播,感兴趣的同学可以自己动手试一试
    2023-09-09
  • 详解Webpack4多页应用打包方案

    详解Webpack4多页应用打包方案

    这篇文章主要介绍了详解Webpack4多页应用打包方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • 跟我学习javascript解决异步编程异常方案

    跟我学习javascript解决异步编程异常方案

    跟我学习javascript解决异步编程异常方案,感兴趣的小伙伴们可以参考一下
    2015-11-11
  • js实现贪吃蛇游戏含注释

    js实现贪吃蛇游戏含注释

    这篇文章主要为大家详细介绍了js实现贪吃蛇游戏含注释,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-03-03
  • js实现简单选项卡制作

    js实现简单选项卡制作

    这篇文章主要为大家详细介绍了js实现简单选项卡制作,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-08-08
  • JS数组操作大全对象数组根据某个相同的字段分组

    JS数组操作大全对象数组根据某个相同的字段分组

    这篇文章主要介绍了JS数组操作大全对象数组根据某个相同的字段分组,需要注意的是,在开发过程这种数组的处理函数,应当被编写到项目的公共工具函数库中全局调用,本文结合实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-11-11
  • ES6新特性:使用export和import实现模块化详解

    ES6新特性:使用export和import实现模块化详解

    本篇文章主要介绍了ES6新特性:使用export和import实现模块化详解,具有一定的参考价值,有兴趣的可以了解一下
    2017-07-07
  • 基于JavaScript实现自定义滚动条

    基于JavaScript实现自定义滚动条

    这篇文章主要为大家详细介绍了基于JavaScript实现自定义滚动条,可以直接使用的滚动条,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • 深入理解JavaScript 中的执行上下文和执行栈

    深入理解JavaScript 中的执行上下文和执行栈

    这篇文章主要介绍了JavaScript 中的执行上下文和执行栈的相关知识,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-10-10

最新评论