Vue中用watch一次监听多个值变化的示例详解

 更新时间:2024年01月04日 10:39:28   作者:小白探索世界欧耶!~  
在Vue中,watch 本身不能监听多个变量,但我们可以通过返回具有计算属性的对象然后监听该对象,从而实现一次性“监听多个变量”,本文给大家介绍了Vue中用watch一次监听两个值变化的示例,需要的朋友可以参考下

在Vue中,watch 本身不能监听多个变量。但我们可以通过返回具有计算属性的对象然后监听该对象,从而实现一次性“监听多个变量”。

  • 在data中定义需要的属性
  • 在computed中返回一个包含将被监听的的各个对象的计算属性
  • 在watch中监听该计算属性

举个例子:

export default {
    data() {
        return {
            msg1:  "message1",
            msg2:  "message2"
        }
    },
    computed: {
        msgObj() {
            const { msg1, msg2 } = this
            return {
                msg1,
                msg2
            }
        }
    },
    watch: {
        msgObj: {
            handler(newVal, oldVal) {
                //newVal和oldVal的值就是新旧msgObj的值,即msg1和msg2的值
		        //接下来在这里写将要进行的操作
 
                if (newVal.msg1 != oldVal.msg1) {
                    console.log( "msg1 is change!!!" )
                }
                if (newVal.msg2 != oldVal.msg2) {
                    console.log( "msg2 is change!!!" )
                }
            },
            deep: true
        }
    }
}

这样,我们就实现了再watch中一次性监听两个值的变化。

想要一次性监听更多个值也可以这么操作。

以上就是Vue中用watch一次监听多个值变化的示例详解的详细内容,更多关于Vue watch一次监听多个值的资料请关注脚本之家其它相关文章!

相关文章

  • 手写实现vue2下拉菜单dropdown组件实例

    手写实现vue2下拉菜单dropdown组件实例

    这篇文章主要为大家介绍了手写vue2下拉菜单dropdown组件实例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • vue2.x background:url()的踩坑记录

    vue2.x background:url()的踩坑记录

    这篇文章主要介绍了vue2.x background:url()的踩坑记录,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • 使用this.$router.go(-1)遇到的一些问题及解决

    使用this.$router.go(-1)遇到的一些问题及解决

    这篇文章主要介绍了使用this.$router.go(-1)遇到的一些问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • 基于Vue2的独立构建与运行时构建的差别(详解)

    基于Vue2的独立构建与运行时构建的差别(详解)

    下面小编就为大家分享一篇基于Vue2的独立构建与运行时构建的差别详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • vue中使用element ui的弹窗与echarts之间的问题详解

    vue中使用element ui的弹窗与echarts之间的问题详解

    这篇文章主要介绍了vue中使用element ui的弹窗与echarts之间的问题详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • 关于element-ui表头吸附问题的解决方案

    关于element-ui表头吸附问题的解决方案

    数据过多滑动表格的时候,看不到表头不知道对应的数据是什么,用户体验操作不友好,要改成表头固定住,所以本文给大家介绍了关于element-ui表头吸附问题的两个解决方案,需要的朋友可以参考下
    2024-01-01
  • 解决Vue打包上线之后部分CSS不生效的问题

    解决Vue打包上线之后部分CSS不生效的问题

    今天小编就为大家分享一篇解决Vue打包上线之后部分CSS不生效的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • element-ui如何取消el-table的hover状态(取消高亮显示)

    element-ui如何取消el-table的hover状态(取消高亮显示)

    在一个项目中需要对element-ui的table组件进行一些样式的修改,其中就包括对hover效果的处理,下面这篇文章主要给大家介绍了关于element-ui如何取消el-table的hover状态(取消高亮显示)的相关资料,需要的朋友可以参考下
    2022-11-11
  • Vue+penlayers实现多边形绘制及展示

    Vue+penlayers实现多边形绘制及展示

    这篇文章主要为大家详细介绍了Vue+penlayers实现多边形绘制及展示,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-12-12
  • 如何修改Vue项目运行的IP和端口

    如何修改Vue项目运行的IP和端口

    这篇文章主要介绍了修改Vue项目运行的IP和端口的方法,本文结合示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-02-02

最新评论