访问计算出的 VueJS 的先前值

lea*_*123 6 vue.js vuejs2

我正在使用计算来检查某些信息何时发生更改。

当我单击并运行计算时,我可以看到数据中的新值和分配给计算函数的旧值。该值可以通过 Chrome Vue 开发工具查看。

我想要做的是访问计算保存的数据,而不是返回的数据。这是之前正确的数据,但计算更新了内部的返回值。

我想这样做的原因是为了显示数据不再匹配并且某些内容发生了变化。

selectedLenses: "30626146713652" <-- Data
changeSelectedLenses: "28717846790196" <-- Computed
Run Code Online (Sandbox Code Playgroud)

单击运行计算函数的按钮,它会更改为:

selectedLenses: "28717846790196" <-- Data
changeSelectedLenses: "30626146713652" <-- Computed (Want to access this data saved to the computed function)
Run Code Online (Sandbox Code Playgroud)

Dan*_*iel 9

如果您想观察变化,使用watch可能是最好的选择。它处理上一个和下一个值,您可以分配它来监视您的计算...

new Vue({
    //...

    data() {
        return {
            selectedLenses: 0
        };
    },

    computed: {
        changeSelectedLenses() {
            return this.selectedLenses + 2;
        }
    },

    watch: {
        changeSelectedLenses(newValue, oldValue) {
            alert(`changeSelectedLenses computed property changed from ${oldValue} to ${newValue}`);
        }
    }
});
Run Code Online (Sandbox Code Playgroud)