我想要这个
export default {
props: {
key: {
type: String,
required: true,
},
},
...
}
但这会导致运行时错误:
[Vue warn]: "key" is a reserved attribute and cannot be used as component prop.
编辑:
为了澄清:我希望保留属性“ key”是必需的。这是因为我的组件依赖于“通过键更改强制组件重新创建”的技巧。 (link)
答案 0 :(得分:2)
key
是Vue.js保留的special attributes之一。
它不能与prop
,ref
,slot
,scoped-slot
一样作为is
传递。
只需将prop
重命名为您选择的任何名称。
如果子组件内部使用名为key
的属性至关重要,则可以在子组件内部创建计算属性key
,该属性将通过传递的prop
返回值并且可以访问在子组件中。
答案 1 :(得分:-2)
VUE更新视图,因为数据的密钥已更改。关键是道具的特殊性。因此支持您使用其他单词。 enter image description here