观察 vue-tags-input 的变化
Watch vue-tags-input change
我的应用程序中有 vue-tags-input 组件:
<vue-tags-input
placeholder="np. x:10,y:10"
v-model="tag"
:tags="tags"
:validation="validation"
@tags-changed="allTags => tagsChanged(allTags)"
/>
我关注文档并在 tags-changed
上执行我自己的映射对象数组的函数:
tagsChanged(tags) {
this.mapsData.waypoints = tags.map(obj => { return obj.text });
console.log(this.mapsData.waypoints);
}
尽管在控制台中我可以看到 this.mapsData.waypoints
包含正确的值,但我无法在 watch
挂钩中看到此更改:
watch: {
'mapsData': {
handler: function (val) {
console.log(val); //never console
},
deep: true
}
},
这个console.log从来没有真正安慰过任何东西。为什么?我需要这款手表将自定义事件发送到我应用程序中具有此值的其他位置。我只能从 tagsChanged
方法发送,但我的 mapsData
还包含其他值,我想从 watcher 发送所有内容。
Vue 出于某种原因无法检测到此更改,因此我需要通过以下方式自行触发它:
Vue.set(object, propertyName, value)
我的应用程序中有 vue-tags-input 组件:
<vue-tags-input
placeholder="np. x:10,y:10"
v-model="tag"
:tags="tags"
:validation="validation"
@tags-changed="allTags => tagsChanged(allTags)"
/>
我关注文档并在 tags-changed
上执行我自己的映射对象数组的函数:
tagsChanged(tags) {
this.mapsData.waypoints = tags.map(obj => { return obj.text });
console.log(this.mapsData.waypoints);
}
尽管在控制台中我可以看到 this.mapsData.waypoints
包含正确的值,但我无法在 watch
挂钩中看到此更改:
watch: {
'mapsData': {
handler: function (val) {
console.log(val); //never console
},
deep: true
}
},
这个console.log从来没有真正安慰过任何东西。为什么?我需要这款手表将自定义事件发送到我应用程序中具有此值的其他位置。我只能从 tagsChanged
方法发送,但我的 mapsData
还包含其他值,我想从 watcher 发送所有内容。
Vue 出于某种原因无法检测到此更改,因此我需要通过以下方式自行触发它:
Vue.set(object, propertyName, value)