如何在特定情况下修改 vuejs vm.var 而不触发其 watch?

2022-01-19 20:59:24 +08:00
 haoliang

我目前的处理方式是加个计数,凑活着可以用。不知道大家有啥更好的方法没?

{
    data() {
        return {
            avoid_changes: 0,
            count: 1,
        }
    },
    watch: {
        count: function(a, b) {
            if (this.avoid_changes > 0) {
                this.avoid_changes -= 1
            } else {
                // triggered
            }
        }
    }
}

if (vm.count != 9) {
    vm.avoid_changes += 1
    vm.count = 9
}
743 次点击
所在节点    问与答
2 条回复
zhiyiyi
2022-01-19 22:08:17 +08:00
vue composition api + vue-use 有可暂停的 watch 方法
vruzo
2022-01-19 22:24:59 +08:00
Object.freeze() ?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/829321

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX