【Vue】watch监听器案例,watch监听器实战、用法,watch监听购物车小案例。watch、filters、computed

编程入门 行业动态 更新时间:2024-10-17 09:38:23

【Vue】watch<a href=https://www.elefans.com/category/jswz/34/1760609.html style=监听器案例,watch监听器实战、用法,watch监听购物车小案例。watch、filters、computed"/>

【Vue】watch监听器案例,watch监听器实战、用法,watch监听购物车小案例。watch、filters、computed

这里对watch进行了实战案例

首先讲一下应用场景,购物车,当你点击了加入购物车时购物车的总数需要重新计算,并且购物车的总价,也是需要重新计算的,这里不考虑勾选之类的问题。只对watch做一个简单的应用实战


这里有3个商品,现在对任意一个进行添加或者删除,总价格和总数量都需要发生变化。

定义数组变量

// 首先定义变量list: [{id: 1,name: "草莓啵啵",price: 10,num: 0,},{id: 2,name: "草莓圣代",price: 15,num: 2,},{id: 3,name: "棒打鲜橙",price: 5,num: 1,},],totalNum: 0,  // 总数量totalPrice: 0, // 总价格

这里的变量是定义在data数据中的

渲染页面数据

<div v-for="(item, index) in list" :key="item.id" class="box"><button @click="add(index)">+</button><div>商品:{{ item.name }} , 价格:{{ item.price }} ,数量:{{ item.num }}</div><button @click="del(index)">-</button></div>总价格:{{ totalPrice }}<br />数量{{ totalNum }}
</div>

再写一下css

.box {width: 300px;display: flex;justify-content: space-between;margin: 20px 10px;
}

添加和删除的方法比较简单,就是直接对数组中的数据进行修改,但是实际肯定不是的,这里写简单点就好了
开✍

methods: {add(index) {this.list[index].num += 1;},del(index) {this.list[index].num -= 1;},},

watch监听

最后添加和删除写好了,就是对页面中的totalNum和totalPrice进行实时监听数据了。

// 写watch监听watch: {// 要监听的数据,可以是数组、对象、或者普通的变量list: {immediate: true, // 立即执行,创建页面时就执行一次deep: true, // 深度监听,会监听到对象里面的属性改变handler(newList) {//newList是改变后的新数组this.totalPrice = 0;this.totalNum = 0;newList.forEach((child) => {// 将总数重新计算this.totalNum += child.num;// 总价格也要重新计算this.totalPrice += child.num * child.price;});},},}, 

看到没有,watch监听
首先写监听的数据名,我定义的数组就叫list,我就写list

总结

watch监听器,没有返回值,是一对多:监听一个,对多个进行修改,无return返回值 👉watch监听器👈

computed,计算属性:将data中的数据进行计算,返回出一个新的变量名,它是多对一,因为可以拿多个数据进行计算,但是最后只返回一个!不可与data重复 👉 computed实战案例

filters,过滤器,可以将渲染在页面上的数据进行分割、转换等过滤器操作。👉filter实战案例

个人理解,如果有不对,请评论区指出纠正。

更多推荐

【Vue】watch监听器案例,watch监听器实战、用法,watch监听购物车小案例。watch、filters、computed

本文发布于:2024-03-23 23:38:22,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1744191.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:监听器   案例   购物车   实战   watch

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!