将评论发布为答案
这里的问题是,在子组件中,您只处理数据
一旦
创建子组件时
the created lifecycle
调用挂钩。那很酷只要
但在大多数情况下,您要么通过Ajax动态地获取数据,要么在组件的生命周期内改变数据(或者两者都改变)。
在您的情况下,可以从父组件动态获取数据,然后将其传递给子组件。但当
created
生命周期事件激发。所以它
不会影响您的数据
因此,您可以
所以基本上,你只想从
watch
-处理程序而不是
已创建
-处理程序:
<script>
export default {
props: {
items: {
type: Array,
default: []
}
},
data() {
return {
local_items: this.items
};
},
watch: {
/* this is called every time the items prop changes */
items: function() {
var result = this.local_items.map(function(el) {
var o = Object.assign({}, el);
o.is_selected = false;
return o;
});
this.local_items = result
console.log('COMPONENT DATA: ', this.local_items);
}
}
};
</script>