Vue 实现递归组件的原理

这个是文件结构:可以create一个脚手架,来写,比较简单。
Vue 实现递归组件的原理_第1张图片
实现效果图:
Vue 实现递归组件的原理_第2张图片
首先在vue脚手架里面创建上面几个文件:
Menu.vue:主要是包裹整个菜单的数据,里面主要挖坑,存放模板。
Vue 实现递归组件的原理_第3张图片
MenuItem.vue:是最外层 title(菜单1,菜单2,菜单3)的值 在app里面引用。
在这里插入图片描述
SubMenu.vue:主要用于 点击 事件,里面有挖了两个坑,用于渲染2个模板,
Vue 实现递归组件的原理_第4张图片

ReSubMenu.vue:这个组件其实就是实现递归思想的大招。(在本组件中调用自己)
Vue 实现递归组件的原理_第5张图片

App.vue:
Vue 实现递归组件的原理_第6张图片
既然实现了:就简单总结一下心得吧:
首先 主要对照 效果图 和数据 弄清数据 有几层 ,有几个children,

然后就是从最外层 开始往里走,拿数据,发现里面有children的抽离出去,在渲染,本组件中调用自己(主要能看懂ReSub组件,基本就能看懂了

你可能感兴趣的:(vue)