【发布时间】:2019-03-04 01:35:34
【问题描述】:
我有以下组件,并想设置editing 的类型和默认值,它可以切换为显示Item 值或<input>:
Vue.component('item', {
props: {
'item': Item,
'editing': {
type: Boolean,
default: false
},
},
data: function() {
return {
_cachedItemText: '',
}
},
methods: {
当按下Edit 按钮(未显示)切换editing 的值时,会出现以下警告。
[Vue 警告]:避免直接改变 prop,因为每当父组件重新渲染时,该值都会被覆盖。相反,使用基于道具值的数据或计算属性。正在变异的道具:“编辑”
在Propsdocumentation 中,有一个示例展示了如何设置道具的类型、默认值和验证器。有没有类似的方法来为数据项设置这些属性?
另外,我没有从父组件传入editing,所以我认为它真的需要成为道具而不是数据项。
【问题讨论】:
-
我认为你不应该同时使用
item作为组件名称和道具名称。 -
@HusamIbrahim 我也想知道这一点。也许它应该是“item-component”之类的。
标签: vue.js vue-component