computed和watch的用法和区别

computed可以监听v-model(data)中的值,只要值发生变化 他就会重新去计算
computed必须是要有一个返回值的哦 
computed 属性的结果会被缓存,除非依赖的响应式属性变化才会重新计算。主要当作属性来使用;


  <div id="app">
        <input type="text" v-model="firstname">+
        <input type="text" v-model="lasttname">=
        <input type="text" v-model="fullname">
    </div>
复制代码
var vm = new Vue({
            el: "#app",
            data: {
                firstname: "",
                lasttname: "",
            },
            methods: {

            },
             
             // computed可以监听v-model(data)中的值,只要值发生变化 他就会重新去计算
             // computed必须是要有一个返回值的哦 
            computed: {
                fullname: function () {
                    return this.firstname + "-" + this.lasttname
                }
            },
        })
复制代码

 

//watch除了可以监听data中值的变化,还可以监听路由的变化,
//watch中有两个参数 分别是新值和旧值

复制代码
     var vm = new Vue({
            el: "#app",
            data: {

            },
            methods: {

            },
            router: router,
            watch: {
                "$route.path":function(newval,oldval){
                if(newval==="/login"){
                    console.log("这是denglu页面")
                }else if(newval==="/zhuce"){
                    console.log("这是注册页面")

                }
                }
            },

        })
复制代码

 

computed和watch的区别
《1》计算属性computed 必须要返回一个值哦 通过return来返回的

         会缓存,只要数据不发生变化,就使用缓存的数据

 

《2》 watch的回调函数里面有两个参数,分别是newval和oldval。

         不会缓存 只要数据发生变化 就会重新的去计算

posted @   南风晚来晚相识  阅读(2892)  评论(1编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示