that.Temp = Vue.extend({
template: '<div>{{model.name}}</div>',
props: {
value: {
type: Object,
default: function() {
return {}
}
}
},
data: function () {
return {
model: {},
}
},
mounted: function () { }
});
that.temp = new that.Temp({
propsData: {
value: that.value
}
}).$mount();
that.$refs.paper.appendChild(that.temp.$el);
一开始我这么写,这个model是我从外部传入,在这个组件外有个input修改model这个组件的显示也会对应的修改,没什么问题。但是保存了值再次进入页面回显的时候,组件外部input的值回显正常但是组件没有任何显示,在组件内部打印model变量也有值。
这是因为model没有赋初值 一开始的model.name没有set和get 侦测不到实时改动,赋上初值就可以了
data: function () {
return {
model: {name:""},
}
},