Javascript 在创建/装载方法尚未完成时,如何禁用vue.js watcher?
我想禁用watcher,这样它在创建时不会触发特定的watcher或装载时完成并在这些完成后启用它。实现这一目标的正确方法是什么?如果看不到你在做什么,就很难确切地知道你想要实现什么。一般来说,您不应该自己处理Javascript 在创建/装载方法尚未完成时,如何禁用vue.js watcher?,javascript,vue.js,Javascript,Vue.js,我想禁用watcher,这样它在创建时不会触发特定的watcher或装载时完成并在这些完成后启用它。实现这一目标的正确方法是什么?如果看不到你在做什么,就很难确切地知道你想要实现什么。一般来说,您不应该自己处理观察者,因此值得查看您的代码,看看是否有更好的解决方案。也就是说,可以在运行时应用观察程序,您可以在初始化后在挂载的钩子中执行此操作: new Vue({ el: '#app', created() { // this won't fire the watcher as i
观察者,因此值得查看您的代码,看看是否有更好的解决方案。也就是说,可以在运行时应用观察程序
,您可以在初始化后在挂载的
钩子中执行此操作:
new Vue({
el: '#app',
created() {
// this won't fire the watcher as it hasn't been applied yet
this.foo = 'foo'
},
mounted() {
// Apply watcher after all other initialization is done
this.applyFooWatcher()
},
methods: {
applyFooWatcher() {
this.$watch('foo', function(newVal, oldVal) {
console.log('Foo changed from ' + oldVal + ' to ' + newVal);
});
}
},
data: {
foo: ''
}
})
以下是JSFIDLE: