隐藏页面特效

Element-Select选择器结合树形控件升级版

前面使用Select选择器结合树形控件实现了下拉框选项是树的场景,查看Element-Select选择器结合树形控件,这次在这个demo的基础上加上树节点的单选功能,其代码如下:

<!-- @author: itmacy @desc: 选择器选项以树形控件展示升级版 --> <template> <div> <el-select v-model="form.id" placeholder="请选择" ref="selectTree"> <el-option :key="form.id" :value="form.id" :label="form.label" hidden/> <el-tree :data="data" ref="tree" :props="defaultProps" node-key="id" accordion show-checkbox check-strictly @check-change="handleNodeClick"/> </el-select> </div> </template> <script> export default { data () { return { data: [{ id: 1, label: '一级 1', disabled: true, children: [{ id: 11, label: '二级 1-1', children: [{ id: 111, label: '三级 1-1-1' }] }] }, { id: 2, label: '一级 2', children: [{ id: 21, label: '二级 2-1', children: [{ id: 222, label: '三级 2-1-1' }] }, { id: 22, label: '二级 2-2', children: [{ id: 221, label: '三级 2-2-1' }] }] }, { id: 3, label: '一级 3', children: [{ id: 31, label: '二级 3-1', children: [{ id: 311, label: '三级 3-1-1' }] }, { id: 32, label: '二级 3-2', children: [{ id: 321, label: '三级 3-2-1' }] }] }], defaultProps: { children: 'children', label: 'label' }, selectNode: {}, // 选中的节点 form: { id: '', value: '' } } }, methods: { handleNodeClick (data, checked) { if (checked) { this.$refs.tree.setCheckedNodes([data]) this.selectNode = data this.form = { id: data.label, value: data.label } // 使 input 失去焦点,并隐藏下拉框 this.$refs.selectTree.blur() } } } } </script> <style scoped> </style>

效果图如下:


__EOF__

本文作者itmacy
本文链接https://www.cnblogs.com/itmacy/p/16267123.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   itmacy  阅读(180)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示