35.Vue 递归组件

作者: 圆梦人生 | 来源:发表于2018-11-16 14:52 被阅读5次

在Vue中组件可以在模板内部递归调用自己,需要给组件设置name值,需要注意的是:必须限定条件,不能无限递归,否则会内存溢出(Error in nextTick: "RangeError: Maximum call stack size exceeded")。

效果

image.png

案例:

index.vue

<template>
  <div>
      <!-- 使用子组件 -->
      <subcmp :Counter="1"></subcmp>
  </div>
</template>
<script>
  // 导入子组件
  import subcmp from './subcmp'
  export default {
      // 注册
      components: {
         subcmp
      },
      data(){
        return {}
      }  
  } 
</script>

subcmp.vue

<template>
  <div>
      子组件,当前Counter值: {{Counter}} <br/>
      <!-- 递归调用自身,如果Counter大于10则停止递归调用 -->
      <subcmps:Counter="Counter + 1" v-if="Counter < 10"></subcmps>
  </div>
</template>
<script>
export default {
  // 必须定义name,组件内部才能递归调用
  name: 'subcmps',
  data(){
    return {}
  },
  // 接收外部传入的值
  props: {
     Counter: {
      default: 1
    }
  }
}
</script>

相关文章

  • 35.Vue 递归组件

    在Vue中组件可以在模板内部递归调用自己,需要给组件设置name值,需要注意的是:必须限定条件,不能无限递归,否则...

  • 14.递归组件与动态组件

    递归组件与动态组件 递归组件 递归组件就是指组件在模板中调用自己,开启递归组件的必要条件,就是在组件中设置一个 n...

  • 组件的高级用法

    递归组件 组件在它的模板中可以递归地调用自己,但是需要给组件设置 name 的选项。同时要注意限制递归的数量,否则...

  • vue 组件递归

    组件递归常用到的栗子就比如树形结构的创建,需要自调用进行递归渲染下面是递归组件渲染tree的效果图: 2.调用组件...

  • Vue之组件高级用法

    1. 递归组件 组件在它的模板内可以递归地调用自己,只要给组件设置name选项即可,并且必须给一个条件来限制递归数...

  • 树形结构递归/原生js实现/vue递归组件

    原生js实现递归渲染 Vue2.0递归组件

  • vue 局部组件递归

    vue只有全局注册的组件才能递归调用吗? 最近在开发 npm 组件库,需要递归使用组件,组件间存在相互依赖关系。搜...

  • Vue menu 递归组件

    分享一个用递归的方式写 menu 组件 vue 利用递归组件写导航 为什么要用递归的方式写 ? 原因可以有几点: ...

  • 2019-02-18 vue组件基础篇6

    组件高级用法递归组件 组件在它的模板内可以递归地调用自己,只要给组件设置name的选项就可以了。设置name后,在...

  • 递归组件

网友评论

  • alex夏夜:这种业务适合用v-for
    圆梦人生:@alex夏夜 是的,这个案例只是说明vue递归组件的使用,递归组件场景更适合 级联下拉、树形菜单等场景

本文标题:35.Vue 递归组件

本文链接:https://www.haomeiwen.com/subject/uzdmfqtx.html