【发布时间】:2020-11-08 20:46:20
【问题描述】:
我是 vue 新手。 我现在正在尝试根据另一个计算变量的变化来更新几个变量。
此计算变量从 Vuex 存储中获取值并按应有的方式工作。我看到价值观发生了变化。 为了计算派生变量,我创建了一个监视计算变量然后更新这些派生值的手表。 此手表在启动期间被调用两次,然后不再调用,尽管计算值不断更新。 我做错了什么。
这是有效的:
...
computed: {
lastAndMarkPrice() {
return store.getters.getLastAndMarkPriceByExchange(
"deribit",
store.getters.getAsset
);
},
...
这部分不起作用:
...
data: () => ({
lastPriceUp: false,
lastPriceDn: false,
markPriceUp: false,
markPriceDn: false,
}),
...
watch: {
lastAndMarkPrice (newValue, oldValue) {
console.log(newValue, oldValue);
this.lastPriceUp = newValue.lastPrice > oldValue.lastPrice;
this.lastPriceDn = newValue.lastPrice < oldValue.lastPrice;
this.markPriceUp = newValue.markPrice > oldValue.markPrice;
this.markPriceDn = newValue.markPrice < oldValue.markPrice;
},
},
...
【问题讨论】:
-
是对象本身改变还是仅仅改变了其中价格属性的值?
标签: javascript vue.js vuex vuetify.js