如何指定“键”作为必需的道具?

时间:2018-10-31 07:24:52

标签: vue.js vuejs2

我想要这个

export default {

  props: {
    key: {
      type: String,
      required: true,
    },
  },
  ...    
}

但这会导致运行时错误:

[Vue warn]: "key" is a reserved attribute and cannot be used as component prop.

编辑:

为了澄清:我希望保留属性“ key”是必需的。这是因为我的组件依赖于“通过键更改强制组件重新创建”的技巧。 (link)

2 个答案:

答案 0 :(得分:2)

key是Vue.js保留的special attributes之一。

它不能与proprefslotscoped-slot一样作为is传递。

只需将prop重命名为您选择的任何名称。

如果子组件内部使用名为key的属性至关重要,则可以在子组件内部创建计算属性key,该属性将通过传递的prop返回值并且可以访问在子组件中。

答案 1 :(得分:-2)

VUE更新视图,因为数据的密钥已更改。关键是道具的特殊性。因此支持您使用其他单词。 enter image description here