Vue中watch的immediate属性和watch本身有何具体区别和作用?

2026-04-05 19:350阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计380个文字,预计阅读时间需要2分钟。

Vue中watch的immediate属性和watch本身有何具体区别和作用?

当将immediate设置为true后,监听的对象将立即输出,也就是说,一旦刷新新页面,控制台就会输出newV。然而,此时页面上的数据我们还未获取到,也无法手动使其发生变化,因此控制台输出的newV是静态的。

immediate

immediate设为true后,则监听的这个对象会立即输出,也就是说一刷新页面就会在控制台输出,当然此时页面上的数据我们还没来得及手动让其发生变化,所以在控制台输出的newValue为我们在代码中默认设置的值,oldValue输出为“undefined”。如

当我们手动改变newValue.id的值后,输出如下:

如果不设置immediate,或者将immediate设为false的话,则刷新页面后不会立即监听此对象,也就是控制台不会有输出,必须要监听的对象有值改变时控制台才会有输出。

data() { return { value:'' }; }, watch:{ value:{ handler:'init', immediate:true } }, methods: { init(){ alert(1) } }

deep设为true后,就可以深入监听了。

阅读全文
标签:immediate

本文共计380个文字,预计阅读时间需要2分钟。

Vue中watch的immediate属性和watch本身有何具体区别和作用?

当将immediate设置为true后,监听的对象将立即输出,也就是说,一旦刷新新页面,控制台就会输出newV。然而,此时页面上的数据我们还未获取到,也无法手动使其发生变化,因此控制台输出的newV是静态的。

immediate

immediate设为true后,则监听的这个对象会立即输出,也就是说一刷新页面就会在控制台输出,当然此时页面上的数据我们还没来得及手动让其发生变化,所以在控制台输出的newValue为我们在代码中默认设置的值,oldValue输出为“undefined”。如

当我们手动改变newValue.id的值后,输出如下:

如果不设置immediate,或者将immediate设为false的话,则刷新页面后不会立即监听此对象,也就是控制台不会有输出,必须要监听的对象有值改变时控制台才会有输出。

data() { return { value:'' }; }, watch:{ value:{ handler:'init', immediate:true } }, methods: { init(){ alert(1) } }

deep设为true后,就可以深入监听了。

阅读全文
标签:immediate