Vue.js组件tree实现省市多级联动


Posted in Javascript onDecember 02, 2016

小颖在上一篇随笔中写了两级的tree,下面给大家再分享一下用<ul><li>标签实现省市多级联动。

调用示例:

<template>
<div>
<treeview :model='treedata'></treeview>
</div>
</template>

<script>
import treeview from './TreeView.vue'
export default {
 components: {
 treeview
 },
 props: {

 },
 method:{

 },
 ready:function(){

 },
 data(){
 return {
 treedata:{text:'地域',
 children: [{
 text: '中国',
 children: [{
  text: '陕西省',
  children: [{
  text: '西安市',
  children: [{
  text: '碑林区'
  }, {
  text: '雁塔区'
  }, {
  text: '未央区区'
  }, {
  text: '新城区'
  }]
  }, {
  text: '安康市'
  }, {
  text: '咸阳市',
  children: [{
  text: '秦都区'
  }, {
  text: '渭城区'
  }]
  }, {
  text: '渭南市'
  }]
 }, {
  text: '四川省',
  children: [{
  text: '成都市'
  }, {
  text: '绵阳市'
  }, {
  text: '广元市'
  }]
 }, {
  text: '安徽省'
 }]
 }, {
 text: '俄罗斯'
 }]}}
 }
 }
</script>

 组件代码:

<style scoped>
ul,li{
 list-style-type: none;
}

</style>
<template>
 <li>
 <div @click='toggle'><span v-if='hasLeaves'>[{{open ? '-' : '+'}}]</span>{{model.text}}</div>
 <ul>
 <treeview v-for='model in model.children' :model='model' v-show='open'></treeview>
 </ul>
 </li>
</template>

<script>
export default {
 name: 'treeview',
 props: {
 model: {
 type: Object
 }
 },
 methods: {
 toggle:function(){
 this.open=!this.open;
 }
 },
 ready: function() {},
 computed:{
 hasLeaves: function() {
 return this.model.children && this.model.children.length
 }
 },
 data() {
 return {
 open: false
 }
 }
}
</script>

效果图:

Vue.js组件tree实现省市多级联动

本文已被整理到了《Vue.js前端组件学习教程》,欢迎大家学习阅读。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery获取Select选择的Text和Value(详细汇总)
Jan 25 Javascript
JScript分割字符串示例代码
Sep 04 Javascript
js调用css属性写法
Sep 21 Javascript
js浏览器本地存储store.js介绍及应用
May 13 Javascript
moment.js轻松实现获取当前日期是当年的第几周
Feb 05 Javascript
详细总结Javascript中的焦点管理
Sep 17 Javascript
vue动画之点击按钮往上渐渐显示出来的实例
Sep 29 Javascript
KnockoutJS数组比较算法实例详解
Nov 25 Javascript
node使用mysql获取数据库数据中文乱码问题的解决
Dec 02 Javascript
原生js+css调节音量滑块
Jan 15 Javascript
详解Vue.js3.0 组件是如何渲染为DOM的
Nov 10 Javascript
编写v-for循环的技巧汇总
Dec 01 Javascript
Vue2实现组件props双向绑定
Dec 02 #Javascript
关于Vue.js一些问题和思考学习笔记(2)
Dec 02 #Javascript
基于jQuery实现表格的排序
Dec 02 #Javascript
利用jQuery插件imgAreaSelect实现图片上传裁剪(放大缩小)
Dec 02 #Javascript
关于Vue.js一些问题和思考学习笔记(1)
Dec 02 #Javascript
利用jQuery来动态为属性添加或者删除属性的简单方法
Dec 02 #Javascript
基于javascript实现的快速排序
Dec 02 #Javascript
You might like
火车头discuz6.1 完美采集的php接口文件
2009/09/13 PHP
PHP daddslashes 使用方法介绍
2012/10/26 PHP
joomla组件开发入门教程
2016/05/04 PHP
PHP数据库操作四:mongodb用法分析
2017/08/16 PHP
jQuery左右滚动支持图片放大缩略图图片轮播代码分享
2015/08/26 Javascript
jQuery实现浮动层随浏览器滚动条滚动的方法
2015/09/22 Javascript
js实现滚动条滚动到某个位置便自动定位某个tr
2021/01/20 Javascript
自己动手制作基于jQuery的Web页面加载进度条插件
2016/06/03 Javascript
AngularJS基础 ng-value 指令简单示例
2016/08/03 Javascript
d3.js实现简单的网络拓扑图实例代码
2016/11/06 Javascript
正则表达式,替换所有HTML标签的简单实例
2016/11/28 Javascript
BootStrap表单控件之复选框checkbox和单选择按钮radio
2017/05/23 Javascript
node vue项目开发之前后端分离实战记录
2017/12/13 Javascript
浅谈Vue 性能优化之深挖数组
2018/12/11 Javascript
原生JavaScript实现的无缝滚动功能详解
2020/01/17 Javascript
实现一个Vue自定义指令懒加载的方法示例
2020/06/04 Javascript
[02:00]最后,我终于出了辉耀
2018/03/27 DOTA
[10:21]2018DOTA2国际邀请赛寻真——Winstrike
2018/08/11 DOTA
python合并文本文件示例
2014/02/07 Python
python读取浮点数和读取文本文件示例
2014/05/06 Python
python批量提取word内信息
2015/08/09 Python
解决Python 遍历字典时删除元素报异常的问题
2016/09/11 Python
python异步编程 使用yield from过程解析
2019/09/25 Python
python中return的返回和执行实例
2019/12/24 Python
基于Python的OCR实现示例
2020/04/03 Python
关于tf.matmul() 和tf.multiply() 的区别说明
2020/06/18 Python
深入了解Python 方法之类方法 &amp; 静态方法
2020/08/17 Python
python 爬虫请求模块requests详解
2020/12/04 Python
HTML5触摸事件实现移动端简易进度条的实现方法
2018/05/04 HTML / CSS
Steiff台湾官网:德国金耳釦泰迪熊
2019/12/26 全球购物
上课睡觉检讨书
2014/01/28 职场文书
推荐信范文大全
2015/03/27 职场文书
傲慢与偏见读书笔记
2015/06/29 职场文书
干部作风纪律整顿心得体会
2016/01/23 职场文书
56句经典英文座右铭
2019/08/09 职场文书
详解Python 3.10 中的新功能和变化
2021/04/28 Python