嘗試使用vue手錶方法,但即使使用deep:true
,它似乎也不會觸發某些對象。Vue手錶不觸發
在我的組件中,我收到一個數組作爲道具,這些字段是用於創建以下形式的字段 。 我可以構建形式和動態地將它們綁定到名爲crudModelCreate
對象,一切工作正常(我在VUE開發工具看,甚至submiting形式按計劃工作)
但我想關注這些變化的一個問題在那個動態的對象中。
<md-input v-for="(field, rowIndex) in fields" :key="field.id" v-model="crudModelCreate[field.name]" maxlength="250"></md-input>
...
data() {
return {
state: 1, // This gets changed somewhere in the middle and changes fine
crudModelCreate: {},
}
},
...
watch: {
'state': {
handler: function(val, oldVal) {
this.$emit("changedState", this.state);
// this works fine
},
},
'crudModelCreate': {
handler: function(val, oldVal) {
console.log("beep1")
this.$emit("updatedCreate", this.crudModelCreate);
// This doesn't work
},
deep: true,
immediate: true
},
}
如何在你的對象的變化進行? –
您可能必須使用['Vue.set'](https://vuejs.org/v2/api/#Vue-set)來更新對象屬性,尤其是在添加新屬性時。 –
[Vue.js觀看深層屬性]的可能重複(https://stackoverflow.com/questions/44760474/vue-js-watching-deep-properties) –