当前位置: 首页 > news >正文

be 设计网站网站建站系统

be 设计网站,网站建站系统,太湖网站建设,文库类网站建设建议及经验综合案例-购物车 需求说明: 1. 渲染功能 v-if/v-else v-for :class 2. 删除功能 点击传参 filter过滤覆盖原数组 3. 修改个数 点击传参 find找对象 4. 全选反选 计算属性computed 完整写法 get/set 5. 统计 选中的 总价 和 数量 计算属性conputed reduce条件求和 6. 持久化到本…

 综合案例-购物车

需求说明:

        1. 渲染功能

                v-if/v-else v-for :class

        2. 删除功能

                点击传参 filter过滤覆盖原数组

        3. 修改个数

                点击传参 find找对象

        4. 全选反选

                计算属性computed 完整写法 get/set

        5. 统计 选中的 总价 和 数量

                计算属性conputed reduce条件求和

        6. 持久化到本地 

                watch监听,localStorage, JSON.stringfiy, JSON.parse

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.active {background-color: azure;}</style></head><body><div id="app"><!-- 顶部banner --><div><img></div><!-- 面包屑 --><div></div><!-- 购物车主体 --><div v-if="fruitList.length > 0"><div><!-- 头部 --><div><div></div></div><!-- 身体 --><div><div v-for="(item,index) in fruitList" :key="item.id" :class="{active:item.isChecked}"><div><input type="checkbox" v-model="item.isChecked"></div><div><img width="100px" height="50px" :src="item.icon"></div><div>{{item.price}}</div><div><div><!-- :disabled: 禁用 --><button :disabled="item.num<=1" @click="sub(item.id)">-</button><span>{{item.num}}</span><button @click="add(item.id)">+</button></div></div><div>{{ item.num * item.price }}</div><div><button @click="del(item.id)">删除</button></div></div></div></div><!-- 底部 --><div><!-- 全选 --><label><input type="checkbox" v-model="isAll">全选</label><div><!-- 所有商品总价 --><span>总价:{{totalPrice}} </span><!-- 结算按钮 --><button>结算({{totalCount}})</button></div></div></div><!-- 空车 --><div v-else>空空如也</div></div><script src="https://cdn.jsdelivr.net/npm/vue@2.7.14/dist/vue.js"></script><script src="https://unpkg.com/axios/dist/axios.min.js"></script><script>// 购物车的默认值const defaultArr = [{id: 1,icon: 'http://autumnfish.cn/static/火龙果.png',isChecked: true,num: 2,price: 6}, {id: 2,icon: 'http://autumnfish.cn/static/荔枝.png',isChecked: false,num: 7,price: 20}, {id: 3,icon: 'http://autumnfish.cn/static/榴莲.png',isChecked: true,num: 10,price: 50},]const app = new Vue({el: '#app',data: {// 水果列表,从本地缓存读取,|| []: 初始值,一般都是空数组fruitList:  JSON.parse(localStorage.getItem("list")) || defaultArr,},computed: {// 默认计算属性:只能获取不能设置,要设置需要写完整的写法// isAll(){//     // 必须所有的小选框都选中,全选按钮才选中 -> every//     return  this.fruitList.every(item => item.isChecked === true)// }// 完整写法 = get + setisAll:{get(){return  this.fruitList.every(item => item.isChecked === true)},set(value){// 基于拿到的布尔值,要让所有的小选框,同步状态this.fruitList.forEach(item => item.isChecked = value)}},// 统计选中的总数 reducetotalCount(){return this.fruitList.reduce((sum,item) => {if (item.isChecked){// 选中 -> 需要累加return sum + item.num}else{// 没选中 -> 不需要累加return sum}},0)},// 统计选中的总价 num * pricetotalPrice(){return this.fruitList.reduce((sum,item) => {if (item.isChecked){return sum + item.num * item.price}else{return sum}},0)}},methods: {del(id) {this.fruitList = this.fruitList.filter(item => item.id != id)},sub(id) {// 1. 根据ID找到数组中的对应项 -> findconst fruit = this.fruitList.find(item => item.id === id)//2. 操作 num 数量fruit.num--},add(id) {// 1. 根据ID找到数组中的对应项 -> findconst fruit = this.fruitList.find(item => item.id === id)//2. 操作 num 数量fruit.num++}},// 缓存到本地watch:{fruitList:{deep: true,handler(newValue){// 需要将变化后的 newValue 存入本地 (转json)localStorage.setItem("list",JSON.stringify(newValue))}}}})</script></body></html>

http://www.tj-hxxt.cn/news/65961.html

相关文章:

  • 科技平台网站建设市场营销计划书模板
  • 石家庄网站建设制作吉林网络公司
  • 武汉做网站推广哪家好企业网站营销的优缺点及案例
  • 企业做的网站费入什么科目市场推广的方法和规划
  • 厦门网站建设方案书最近的重要新闻
  • 北京网站建设有限公司口碑营销成功案例
  • 珠海网站建设公司哪个好百度搜索风云榜游戏
  • 建设的网站都是怎么赚钱产品推广方案怎么做
  • 阿里云ecs网站建设上海网站seo招聘
  • 网站做中文和英文切换智慧软文发稿平台官网
  • 梧州网站优化7月新闻大事件30条
  • 设计师招聘网站口碑营销属于什么营销
  • 网络营销推广系统排名推荐系统精准网站seo诊断报告
  • 南宁哪个公司做网站好郑州网络推广服务
  • 百度收录不到公司网站公司网站免费建站
  • 广州专业网站制作哪家专业网站建设与管理就业前景
  • 厦门外贸网站建设平台营销
  • 怎样给网站做 站内搜索推广软件的渠道有哪些
  • 世界营销大师排名大型seo公司
  • 莘县制作网站网络营销产品的首选产品
  • 网络开发工程师工资肇庆网站快速排名优化
  • 生活信息网站建设北京专门做seo
  • 百度推广 做网站竞价托管就选微竞价
  • 上海什么做网站的公司比较好北京搜索引擎优化管理专员
  • 简洁大气的公司网站如何设计企业网站
  • 聊天室网站开发外包公司为什么没人去
  • 永嘉专业网站建设团队中国十大门户网站排行
  • 做任务赚佣金的网站seo公司排名
  • wordpress资讯网站模板潍坊关键词优化排名
  • 国内设计师交流网站百度大搜推广和百度竞价