vue如何使用watch监听指定数据的变化

 更新时间:2022年04月08日 14:17:53   作者:北海之灵  
这篇文章主要介绍了vue如何使用watch监听指定数据的变化,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

使用watch监听指定数据的变化

 在vue中,可以使用watch属性来监听data中某个属性值的变化。

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  </head>
<body>
  <div id='app'>
    <input type="text" v-model="firstname" >+
    <input type="text" v-model="lastname" >=
    <input type="text" v-model="fullname">
  </div>
</body>
<script src="../lib/vue.js"></script>
<script>
  var vm = new Vue({
    el:'#app',
    data:{
      firstname:'',
      lastname:'',
      fullname:''
    },
    methods:{
     
    },
    //使用这个属性,可以监视 data 中指定数据的变化,然后触发这个 watch 中对应的function 处理函数
    watch:{
      firstname:function(newVal,oldVal){
        //console.log('监视到了firstname的变化');
        //this.fullname = this.firstname + "-" + this.lastname
        console.log(newVal +"---"+oldVal)
        this.fullname = newVal + "-" + this.lastname
      },
      'lastname':function(newVal){
        this.fullname = this.firstname + "-" + newVal
      }
    }
  })
</script>
</html>

vue watch监听多个值

用computed定义一个address对象吧,然后再去watch addres

data() {
  return {
    check: false,
    sign_img: "",
    submit_flag: false'
  }
},
computed: {
  btnObj() {
    const { sign_img, check } = this
    return {
      sign_img,
      check
    }
  }
},
watch: {
  btnObj: {
    handler: function(newVal,oldVal) {
      if(!!this.sign_img && this.check){
        this.submit_flag = true
        this.sign_flag = '1'
      }else{
        this.submit_flag = false
        this.sign_flag = '0'
      }
    },
    deep: true,
    immediate: true
  }
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。 

相关文章

  • 教你如何通过Vue路由改变地址栏的参数

    教你如何通过Vue路由改变地址栏的参数

    Vue是一款非常流行的JavaScript框架,它提供了许多方便开发者的功能,本文将介绍如何通过Vue路由改变地址栏的参数,感兴趣的朋友跟随小编一起看看吧
    2023-10-10
  • vue中下载文件后无法打开的坑及解决

    vue中下载文件后无法打开的坑及解决

    这篇文章主要介绍了vue中下载文件后无法打开的坑及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • VUE 单页面使用 echart 窗口变化时的用法

    VUE 单页面使用 echart 窗口变化时的用法

    这篇文章主要介绍了VUE 单页面使用 echart 窗口变化时的用法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • Vue3使用KeepAlive不生效的解决方法

    Vue3使用KeepAlive不生效的解决方法

    使用arco-design-pro的vue3后台框架, 切换路由时, 组件包裹的keepAlive不生效, 切换tab后组件状态会刷新, 并重新获取接口, 导致页面切换时闪烁,所以本文给大家介绍了Vue3使用KeepAlive不生效的解决方法,需要的朋友可以参考下
    2024-11-11
  • vue在data中定义变量后依旧报undefined的解决

    vue在data中定义变量后依旧报undefined的解决

    这篇文章主要介绍了vue在data中定义变量后依旧报undefined的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03
  • Vue使用Canvas生成随机大小且不重叠圆

    Vue使用Canvas生成随机大小且不重叠圆

    Canvas是HTML5中新增的元素,专门用来绘制图形,下面这篇文章主要给大家介绍了关于Vue使用Canvas生成随机大小且不重叠圆的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2021-11-11
  • Vue收集表单数据和过滤器总结

    Vue收集表单数据和过滤器总结

    这篇文章主要介绍了Vue收集表单数据和过滤器的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-05-05
  • 关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性)

    关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性)

    这篇文章主要介绍了关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性),需要的朋友可以参考下
    2018-09-09
  • vue中手动封装iconfont组件解析(三种引用方式的封装和使用)

    vue中手动封装iconfont组件解析(三种引用方式的封装和使用)

    这篇文章主要介绍了vue中手动封装iconfont组件(三种引用方式的封装和使用),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • 详解vue更改头像功能实现

    详解vue更改头像功能实现

    这篇文章主要介绍了vue更改头像功能实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04

最新评论