从列表渲染中按键获取组件

时间:2018-12-13 11:26:21

标签: vue.js vuejs2

使用vue渲染自定义组件列表。如何通过键名访问特定的渲染组件?

<component v-for="field in r.fields"
                       :key="field.name"
                       :field="field"
                       :is="field.component"
            ></component>

自定义组件有一些我需要从另一个自定义组件访问的方法。

1 个答案:

答案 0 :(得分:2)

如果添加ref,则可以通过与键匹配来搜索组件:

<component v-for="field in r.fields"
  :key="field.name"
  :field="field"
  :is="field.component"
  ref="comps"
></component>
this.$refs.comps.find(comp => comp.$vnode.key === 'foo')