Vue 组件调动自身

136 阅读1分钟

在开发中遇到组件调用自身的问题,因为不确定dom具体有多少层,所以只能用递归的方式去渲染页面。

我们先看一下官网中的name作用

name

  • 类型:string

  • 限制:只有作为组件选项时起作用。

  • 详细

允许组件模板递归地调用自身。注意,组件在全局用 Vue.component() 注册时,全局 ID 自动作为组件的 name。

指定 name 选项的另一个好处是便于调试。有名字的组件有更友好的警告信息。另外,当在有 vue-devtools,未命名组件将显示成 <AnonymousComponent>,这很没有语义。通过提供 name 选项,可以获得更有语义信息的组件树。

  MyComp.vue
  
  <template>
      <div>
          <!-- 递归调用自身 -->
          <my-comp></my-comp>
      </div>
  </template>
  
  <script>
      name: 'MyComp' //在这里name就相当于注册了当前的组件。可以直接引用自己了。
  </script>