vue递归组件-笔记

递归组件

递归 :调用自身的编程 = 递归

需要给递归设置一个边界条件,用这个边界条件判断是否继续递归下去

如果不设置判断条件,将会无限递归,

递归组件 = 递归 + 组件

组件在边界条件内不断调用自己,直到超出边界条件为止

树组件 , 左侧导航栏 ,多级表格(嵌套表格)

最开始前端并不知道这个导航有多少个层级

获取后端数据 ,在导航组件中设置递归边界,渲染数据

注册一个全局组件

<RootNav :list='navList'/>

在全局获取navList数据 , 传递给组件

在组件中接收数据 props

const props = defineProps({

list: {

type:Array ,

default:()=>[]

}

})

//数据中children就是子菜单的意思

根据这个字段判断要不要继续递归 ,这个就是边界条件

<ul>

<template v-for='item in list'>

<li>{{item.name}}</li>

<RootNav :list='item.children' v-if='item.children.length > 0'/>

{/* 或者 v-if="'children' in item" */}

</template>

'children' in item 意思是item对象中是否有children属性

相关推荐
不务正业的前端学徒1 天前
webpack/vite配置
前端
hhcccchh1 天前
学习vue第八天 Vue3 模板语法和内置指令 - 简单入门
前端·vue.js·学习
yyf198905251 天前
Vue 框架相关中文文献
前端·javascript·vue.js
粥里有勺糖1 天前
开发一个美观的 VitePress 图片预览插件
前端·vue.js·vitepress
行者961 天前
Flutter适配OpenHarmony:国际化i18n实现中的常见陷阱与解决方案
开发语言·javascript·flutter·harmonyos·鸿蒙
陟上青云1 天前
一篇文章带你搞懂原型和原型链
前端
我的写法有点潮1 天前
推荐几个国外比较流行的UI库(上)
前端·javascript·css
鹏多多1 天前
jsx/tsx使用cssModule和typescript-plugin-css-modules
前端·vue.js·react.js
Cherry的跨界思维1 天前
【AI测试全栈:Vue核心】22、从零到一:Vue3+ECharts构建企业级AI测试可视化仪表盘项目实战
vue.js·人工智能·echarts·vue3·ai全栈·测试全栈·ai测试全栈
ssshooter1 天前
复古话题:Vue2 的空格间距切换到 Vite 后消失了
前端·vue.js·面试