先来个简单的数据

 1 lists =  [{
2 id: 1,
3 title: '第一层',
4 children: [{
5 id: 3,
6 title: '第二层',
7 children: [{
8 id: 4,
9 title: 第三层
10 }]
11 }]
12 },{
13 id: 2,
14 title: '第一层'
15 }]

上面的数据是个很简单的数据,一个数组,嵌套了3层,即id为1为祖,id为3为父,id为4位孙。

创建一个简单的单组件,list.vue,name属性为list

 1 <template>
2 <div>
3 <div
4 class="item"
5 v-for="(item, index) in lists"
6 :key="index"
7 >
8 <div class="item-title">
9 {{item.title}}
10 </div>
11 <div v-if="item.children" class="item-children">
12 <!-- 调用自己,将数据传递进去,一定要加判断数据是否存在,以防出bUG -->
13 <!-- 使用组件nama属性list来调用 -->
14 <list :list="item.children"></list>
15 </div>
16 </div>
17 </div>
18 </template>
19
20 <script>
21 export default {
22 // name主要是为了使用递归组件
23 name: 'DetailList',
24 props: {
25 // 数据上方
26 lists: Array
27 }
28 }

渲染结果为:

  第一层

  第二层

  第三层

  第一层

好像有点难分,给item-children加个padding-left属性,

如padding-left: .2rem

渲染结果大概是:

  第一层

    第二层

      第三层

  第一层

用来做树型数据的列表往往很好用,节省了代码。

最新文章

  1. 如何利用Cron让django应用定期执行
  2. codeforces 500B.New Year Permutation 解题报告
  3. PHP 匹配一个汉字
  4. xml数据解析调研
  5. Python进阶07 函数对象
  6. c# 读取其他程序的ListView内容
  7. poj 1941 The Sierpinski Fractal 递归
  8. mac 布置 git仓库服务器
  9. Qt中addStretch的有趣应用
  10. Linux查看用户数、登录用户
  11. ubuntu14.04 下手动安装java jdk
  12. C++ vector 常用API
  13. HTML篇(下&#183;)
  14. Docker镜像的构成__docker commit
  15. 2PC/3PC到底是啥
  16. [MySQL 5.6] GTID实现、运维变化及存在的bug
  17. BOOST ASIO 学习专贴
  18. Android-Java-了解编译
  19. jstl foreach 取index
  20. javascript sleep方法

热门文章

  1. 搜索引擎学习(五)Lucene操作索引
  2. Android小部件Widget开发过程中的坑和总结
  3. python数据结构之二叉树的建立实例
  4. Python基本数据类型详细介绍
  5. 【编程开发】Python---列表
  6. C++枚举变量与switch
  7. C语言&amp;C++ 中External dependencies
  8. Arduino各开发板
  9. js日志输出还是只会console.log么,那你就out了
  10. CV学习日志:CV开发常用库及其头文件