Loading

vue监听器报错 只接受简单的点分隔路径。 要完全控制,请改用函数

监听对象中的属性,我们一般这样写

watch: {
    'obj.a' (val, oldVal) {
        ...your code
    }
}

对于对象中复杂的字符串监听,比如form.zh-CN这种怎么办?如果还用之前的那种监听方式,可能会报下诉错误
Failed watching path: “XXXXX” Watcher only accepts simple dot-delimited paths. For full control, use a function instead.
意思是说,只接受简单的点分隔路径。 要完全控制,请改用函数。
那么问题来了,如何改写成函数形式?方法如下:

created () {
     this.$watch(
        function () {  // 第一个函数就是处理你要监听的属性,只要将其return出去就行
            return this.form['zh-CN']
        },
        function (val, oldVal) {
            ... your code
        }
    )
}
posted @ 2022-07-04 11:21  资深if-else侠  阅读(2523)  评论(0编辑  收藏  举报