当前位置: 首页 > news >正文

Vue - 组件递归

目录

  • 组件递归
    • 子组件
    • 父组件

组件递归

当要渲染一个目录时,因为可能有嵌套数据,并且组件的层级未知,可以使用组件递归来解决

注意点:

1,使用递归时必须提供 name,也就是通过组件的 name 递归自己

2,注意组件事件传递。

举例:

子组件

<template><ul><li v-for="(item, index) in list" :key="index"><span @click="handleClick(item)">{{ item.name }}</span><RecursionList v-if="item.children?.length" :list="item.children" @clickItem="handleClick"/></li></ul>
</template><script>
export default {name: 'RecursionList',props: {list: {type: Array,default: () => []}},methods: {handleClick(item) {this.$emit('clickItem', item)}}
}
</script>

父组件

<template><RecursionList :list="list" @clickItem="getItem" />
</template><script>
import RecursionList from './components/RecursionList.vue'
export default {components: {RecursionList},data() {return {list: [{ name: 'a' }, { name: 'b' }, { name: 'c', children: [{ name: 'ca' }, { name: 'cb' }, { name: 'cc', children: [] }] }]}},methods: {getItem(item) {console.log(item)}}
}
</script>

以上。

http://www.lryc.cn/news/177954.html

相关文章:

  • 微信小程序案例2-1:学生信息
  • 小程序如何设置余额充值
  • vue项目打包成H5apk中使用语音播放
  • windows:批处理bat实例
  • websocket php教程
  • 【操作系统】调度算法的评价指标和三种调度算法
  • CSS详细基础(三)复合选择器
  • LeetCode【2251. 花期内花的数目】
  • 大数据(九):数据可视化(一)
  • 讲讲项目里的仪表盘编辑器(二)
  • 文心一言 VS 讯飞星火 VS chatgpt (102)-- 算法导论9.3 8题
  • axios添加缓存请求,防止多次请求,单页面多个同一组件造成多次请求解决方案
  • Java包装类与自动拆箱装箱
  • 基于SpringBoot网上超市的设计与实现【附万字文档(LW)和搭建文档】
  • 二、C++项目:仿muduo库实现并发服务器之时间轮的设计
  • 计算机竞赛 深度学习OCR中文识别 - opencv python
  • 蓝桥等考Python组别五级003
  • 学之思项目第一天-完成项目搭建
  • pandas--->CSV / JSON
  • LeetCode算法二叉树—116. 填充每个节点的下一个右侧节点指针
  • 二、2023.9.28.C++基础endC++内存end.2
  • DevSecOps 将会嵌入 DevOps
  • 不同管径地下管线的地质雷达响应特征分析
  • 【接口测试学习】白盒测试 接口测试 自动化测试
  • 7.网络原理之TCP_IP(下)
  • Docker Dockerfile解析
  • 浏览器从输入URL到页面展示这个过程中都经历了什么
  • 2023-09-22 monetdb-事务管理-乐观并发控制-记录
  • 蓝桥等考Python组别四级008
  • SpringMVC 学习(二)Hello SpringMVC