vue监听属性 watch的使用总结

简介: vue监听属性 watch的使用总结

1.作用


可以监听data/computed等属性值改变。

常见于监听某变量值的改变,或者对象中属性值的改变

2.应用场景


如监听路由变化

如当页面的数据变动需要做逻辑运算时

如组件创建时,监听某个变量或者某对象的值或属性改变时

如使用此属性判断父子组件传值发生时做逻辑。

3.用法:


注意:和data、methods同级

 watch: {
     "被监听的属性名" (newVal, oldVal){
     }
 }

小结:想要监听一个属性变化, 可使用监听属性watch

4.深度监听和立即执行(监听复杂类型)


用法:

watch: {
    "要监听的属性名": {
        immediate: true, // 立即执行
        deep: true, // 深度监听复杂类型内变化
        handler (newVal, oldVal) {
        }
    }
}

例子:

<template>
  <div>
    <input type="text" v-model="user.name">
    <input type="text" v-model="user.age">
  </div>
</template>
<script>
export default {
  data(){
    return {
      user: {
        name: "小白",
        age: 18
      }
    }
  },
  watch: { // 固定属性(设置监听哪些属性)
    user: { // 具体属性名(被监听)
      handler(newVal, oldVal){ // 固定触发此函数
        console.log(newVal);
      },
      immediate: true, // 马上监听触发
      deep: true // 深度监听(监听name和age值的改变)
    }
  }
}
</script>

小结: immediate立即监听, deep深度监听, handler固定方法触发

5.总结:


最常见的业务中使用思路:

监控data中某个变量的变化==>发生变化===> 逻辑运算 ===>实现功能


相关文章
|
11天前
|
JavaScript
vue使用iconfont图标
vue使用iconfont图标
77 1
|
22天前
|
JavaScript 关系型数据库 MySQL
基于VUE的校园二手交易平台系统设计与实现毕业设计论文模板
基于Vue的校园二手交易平台是一款专为校园用户设计的在线交易系统,提供简洁高效、安全可靠的二手商品买卖环境。平台利用Vue框架的响应式数据绑定和组件化特性,实现用户友好的界面,方便商品浏览、发布与管理。该系统采用Node.js、MySQL及B/S架构,确保稳定性和多功能模块设计,涵盖管理员和用户功能模块,促进物品循环使用,降低开销,提升环保意识,助力绿色校园文化建设。
|
2月前
|
JavaScript API 开发者
Vue是如何进行组件化的
Vue是如何进行组件化的
|
2月前
|
JavaScript 前端开发 开发者
Vue是如何进行组件化的
Vue是如何进行组件化的
|
缓存 JavaScript
vue中computed和watch的区别
vue中computed和watch的区别
|
缓存 JavaScript
Vue 中 computed 和 watch 的区别
Vue 中 computed 和 watch 的区别
99 0
|
8月前
|
缓存 JavaScript
聊一聊Vue中的computed和watch区别
聊一聊Vue中的computed和watch区别
|
8月前
|
缓存 JavaScript
Vue 中的 computed 和 watch 的区别
Vue 中的 computed 和 watch 的区别
|
缓存 JavaScript 前端开发
Vue 中的 computed 和 watch 的区别
Vue 中的 computed 和 watch 的区别
227 0
|
缓存 JavaScript
Vue中computed和watch的区别
1、支持缓存,只有依赖数据发生改变,才会重新进行计算 2、不支持异步,当computed内有异步操作时无效,无法监听数据的变化
191 0
Vue中computed和watch的区别