vue组件递归

刚才写了篇《element多层导航菜单》文章,顺便也写写其中核心原理javascript

其实没啥好说就是组件递归,这里呢简单写个例子,html

面试被问到的时候直接拿来手写代码也行,java

有看到本文章的同窗能够复制代码去试试面试

没多少代码量,主要是让还没懂组件递归的同窗好理解spa

核心就这个,组件本身调用本身:htm

 

 // ====== 组件: ==================blog

<template>
  <ul>
    <li v-for="(item,index) in list " :key="index">
      <p>{{item.name}}</p>
      <treeMenus :list="item.children"></treeMenus>
    </li>
  </ul>
</template>
<script>
export default {
  name: "treeMenus",
  props: {
    list: Array
  }
};
</script>
<style>
    ul {
    padding-left: 20px !important;
    }
</style>

 

// ====== 调用: ==================递归

<!-- html调用 -->
<treeMenus :list="treeMenusData"></treeMenus>


treeMenusData: [ // 数据格式
  {
    name: "菜单1",
    children: [
      {
        name: "菜单1-1",
        children: []
      }
    ]
  }
]

 效果图:ip

相关文章
相关标签/搜索