created() 完成后启动 watcher
Start watcher after created() is done
我的目标是在创建组件时最初设置数据 属性,然后在此 属性 上设置观察者。我正在努力解决的问题是观察者在创建的方法中捕获初始 属性 更改,但这不是我想要的。我宁愿只在 属性 在 created() 中进行初始更改后 观看数据。
export default {
name: 'testComponent',
data() {
return {
testValue: 1;
}
},
watch: {
testValue() {
console.log('watcher catches!');
},
created() {
console.log(this.testValue);
this.testValue = 2;
console.log(this.testValue);
}
}
// CONSOLE OUTPUT: 1 -> watcher catches! -> 2
你能告诉我如何实现这样的行为吗?
不知道你为什么想要那个,但你可以简单地这样做:
export default {
name: 'testComponent',
data() {
return {
ready: false,
testValue: 1
}
},
watch: {
testValue() {
if (!this.ready) return;
console.log('watcher catches!');
},
created() {
this.testValue = 2;
this.ready = true;
}
}
我的目标是在创建组件时最初设置数据 属性,然后在此 属性 上设置观察者。我正在努力解决的问题是观察者在创建的方法中捕获初始 属性 更改,但这不是我想要的。我宁愿只在 属性 在 created() 中进行初始更改后 观看数据。
export default {
name: 'testComponent',
data() {
return {
testValue: 1;
}
},
watch: {
testValue() {
console.log('watcher catches!');
},
created() {
console.log(this.testValue);
this.testValue = 2;
console.log(this.testValue);
}
}
// CONSOLE OUTPUT: 1 -> watcher catches! -> 2
你能告诉我如何实现这样的行为吗?
不知道你为什么想要那个,但你可以简单地这样做:
export default {
name: 'testComponent',
data() {
return {
ready: false,
testValue: 1
}
},
watch: {
testValue() {
if (!this.ready) return;
console.log('watcher catches!');
},
created() {
this.testValue = 2;
this.ready = true;
}
}