Vue实例—— 计算属性(computed)、 watch 状态监听和filter 过滤器

简介: Vue实例—— 计算属性(computed)、 watch 状态监听和filter 过滤器

Vue实例配置对象


image.png


计算属性(computed)


格式:computed:{ 变量(){ 计算表达式} }

<p>总价格为:{{sum}}</p>
var app=new Vue({
el:"#app",
data:{
price:10,
num:0
},
//按钮事件自增,自减事件
menthods:{
  add:function(){
      this.num++;
  },
   end:function(){
        this.num--;
   },
},
    computed:{
      sum(){
          return this.price*this.num
      }
    }
})


watch 状态监听(用来监听事件的变化)


注意:监听名要与被监听名相同,监听上一个数据,和新的数据。(应用场景:数据发生改变需要保存新数据或者需要查看以前的数据)

<!-- -->
<body>
    <div id="app">
        <input type="text" v-model="name"><br>
        <input type="text" v-model="home">
    </div>
    <script>
        var app = new Vue({
            el: "#app",
            data: {
                name: "上海",
                home:"北京"
            },
            watch: {
                name(newvalue, oldvaule) {
                    console.log("新城市:" + newvalue)           //新的值
                    console.log("旧的城市:" + oldvaule)           //旧的值
                },
                    home(newvalue,oldvaule){
                    console.log("新家:" + newvalue)    //新的值
                    console.log("旧家:" + oldvaule)    //旧的值
                    }
                },
        });
    </script>
</body>
watch: {  
     //简写
     name(newvalue, oldvaule) {
    console.log("新城市:" + newvalue)           //新的值
     console.log("旧的城市:" + oldvaule)           //旧的值
                },
      //全写
      name:{
      immediate:true,  //是否初始化时执行  
       handler(newvalue,oldvalue){
      console.log("新城市:" + newvalue)           //新的值
      console.log("旧的城市:" + oldvaule)           //旧的值
                  }
                }
     }


filter 过滤器


filter 过滤器,(对数进行格式化,比如字符串首字母大写,日期格式化等据)在页面中直接操作数据,返回最终结果。

<body>
    <div id="app">
        {{mis | bag}}
    </div>
    <script>
        var app = new Vue({
            el: "#app",
            data: {
              mis: "hello world",         //小写转大写
            },
        filters:{
         bag(value){
         return  value?value.toUpperCase():""  
         }    
        }
        });
    </script>
</body>
相关文章
|
18天前
|
缓存 JavaScript
Vue 中 computed 与 method 的区别
【10月更文挑战第15天】computed 和 method 是 Vue 中两个重要的选项,它们在功能和特点上存在着明显的区别。理解并合理运用它们的区别,可以帮助我们构建更高效、更具可维护性的 Vue 应用。在实际开发中,要根据具体情况灵活选择使用,以满足不同的需求。
16 2
|
21天前
|
缓存 JavaScript Serverless
vue中computed计算属性、watch侦听器、methods方法的区别以及用法
vue中computed计算属性、watch侦听器、methods方法的区别以及用法
79 0
|
2月前
|
缓存
Vue3 的 computed 和 watch 函数有哪些不同?
Vue3 的 computed 和 watch 函数有哪些不同?
|
JavaScript 前端开发
重读vue电商网站41之自定义格式化时间的全局过滤器
重读vue电商网站41之自定义格式化时间的全局过滤器
112 0
重读vue电商网站41之自定义格式化时间的全局过滤器
|
前端开发 JavaScript
Vue自定义过滤器
在进行前端开发时,我们难免需要进行一些数据的特定处理,因此我们只需在main.js中定义过滤器,即可多次使用。
|
JSON JavaScript 数据格式
|
10天前
|
数据采集 监控 JavaScript
在 Vue 项目中使用预渲染技术
【10月更文挑战第23天】在 Vue 项目中使用预渲染技术是提升 SEO 效果的有效途径之一。通过选择合适的预渲染工具,正确配置和运行预渲染操作,结合其他 SEO 策略,可以实现更好的搜索引擎优化效果。同时,需要不断地监控和优化预渲染效果,以适应不断变化的搜索引擎环境和用户需求。
|
3天前
|
JavaScript
Vue基础知识总结 4:vue组件化开发
Vue基础知识总结 4:vue组件化开发
|
3天前
|
存储 JavaScript
Vue 状态管理工具vuex
Vue 状态管理工具vuex
|
10天前
|
缓存 JavaScript 搜索推荐
Vue SSR(服务端渲染)预渲染的工作原理
【10月更文挑战第23天】Vue SSR 预渲染通过一系列复杂的步骤和机制,实现了在服务器端生成静态 HTML 页面的目标。它为提升 Vue 应用的性能、SEO 效果以及用户体验提供了有力的支持。随着技术的不断发展,Vue SSR 预渲染技术也将不断完善和创新,以适应不断变化的互联网环境和用户需求。
29 9