购物车案例--分模块存储数据,发送请求数据渲染,底部总计数量和价格

ops/2024/12/15 11:24:55/

shift+鼠标右键,打开powershell,新建项目 

自定义 

只有一个页面,不涉及路由,勾选vuex,css,babel

 

 

无需保存预设

回车项目开始创建 

 

项目用vscode打开 

将src里的内容全部清空

将第七天的课程准备代码复制粘贴到src中 

 

刷新页面,可看到购物车案例

 vuex分模块存储数据

 

新建模块并挂载。新建modules文件夹,该文件夹下新建cart.js模块。

 

生成后端接口

全局安装json-server 

新建db文件夹(用于存放数据源),将准备好的 index.json(在第七天课程中有) 放到文件夹中

 

提供数组包对象的格式,json-server就能基于这些数据提供增删改查全套结果
注意:json格式 ”键“必须用双引号引起来

index.json处打开powershell 

 
 

可以看到有两个接口了 ,启动index.json的窗口不能关,否则接口访问不了

请求获取数据存入vuex,映射渲染

因为以前安装的esLint版本与axios版本冲突导致axios安装不了,无妨 ,--force强制安装 。安装完成axios之后再启动一次serve

 

 在App.vue的created中已进入页面就调用actions执行异步请求数据,actions调用mutations将获取的数据写入到list中

获取数据之后进行渲染

  • 用辅助函数获取 cart.js中的数据 list,然后v-for进行渲染
  • 在父组件中定义的子组件标签通过 :item自定义属性,将 父组件中访问的数据 传递到子组件,并在子组件进行接收渲染

 

打开页面检查,打开vue调试工具,找 list中各个对象的属性,以便进行渲染 

大的渲染在App.vue中,也就是有几个大块,细节渲染是每个大块里边

 

 修改数量

前端数据通过mutations来修改,后端 index.json中的数据通过发请求来修改(都是在actions中,一个提交更新,一个请求更新)

 通过注册点击事件向actions的updateCountAsync方法中传递 id和 实际参数值,因为有两个参数,所以updateCountAsync方法通过对象来接收。

  • 先是向接口发请求修改数据,传过来的 id 作为地址一部分发送请求,然后将后端数据库中的count(此处必须是count,因为是要修改其值)值改为传过来的新值
  • 接下来是向调用mutations中方法,更新本地数据(这里就不要求数据名一样了)

getters底部统计

  • 基于state准备对应getters

  • 使用mapGetters来映射使用


http://www.ppmy.cn/ops/142085.html

相关文章

国内首本大模型中文版书籍!复旦大学《大规模语言模型·从理论到实践》全面的一本大模型图书!

看张奇教授的主页,感觉这教授、博导太牛了。 在大语言模型实践和理论研究的过程中,他与桂韬研究员、郑锐博士生以及黄萱菁教授,历时 8 个月共同完成了这本书《大规模语言模型从理论到实践》! 有需要这本《大规模语言模型从理论到实…

可视化大屏:并非面子工程,而是价值驱动的创新工具

一、可视化大屏的广泛应用 如今,可视化大屏在众多领域都发挥着重要作用。在智慧城市领域,它整合了城市的交通、能源、环境等各类数据,为城市管理者提供了一个直观的决策支持平台。 通过可视化大屏,管理者可以实时了解城市的运行状…

python之xml和excel学习

dom解析 from xml.dom.minidom import parse import xml.dom.minidom# 使用minidom解析器打开 XML 文档 DOMTree xml.dom.minidom.parse("xxx.xml") collection DOMTree.documentElement# 根据标签名称获取 movies collection.getElementsByTagName("fistTa…

计算机操作系统保护与安全教学指南

一、引言 在当今数字化时代,计算机操作系统作为计算机系统的核心,其安全性至关重要。操作系统不仅要管理计算机的硬件资源,还要为各类应用程序提供运行环境。一旦操作系统的安全防线被攻破,可能导致用户数据泄露、系统瘫痪等严重…

渗透测试-前端验签绕过之SHA256+RSA

本文是高级前端加解密与验签实战的第2篇文章,本系列文章实验靶场为Yakit里自带的Vulinbox靶场,本文讲述的是绕过SHA256RSA签名来爆破登录。 绕过 根据提示可以看出这次签名用了SHA2556和RSA两个技术进行加密。 查看源代码可以看到RSA公钥是通过请求服务…

一座重庆工厂,智能与制造的“两江之约”

嘉陵江与长江在此交汇,勾勒出了重庆最独特的风景线,也成就了这座城市的千百年商贸兴盛与近代工业的崛起。 数字化、智能化时代,这座江边古城、工业重镇,也开始涌动着智能技术的创新源动力。其中最具代表性的,就是坐落在…

【动手学运动规划】 4.6 Hybrid A*算法

勇敢不是不感到恐惧,而是在恐惧面前仍然前行。 —《狮子王》 🏰代码及环境配置:请参考 环境配置和代码运行! 4.6.1 概述 Hybrid A* 是 2004 年 DARPA 城市挑战中的冠军车队使用的全局导航算法。相比与传统的 A* 算法,Hybrid A* …

JetBrains IDE(IDEAWebStorm)配置GitHub Copilot

关于 GitHub Copilot 和 JetBrains IDE GitHub Copilot 在编写代码时提供 AI 对程序员的自动完成样式的建议。 有关详细信息,请参阅“关于 GitHub Copilot Individual”。 如果使用 JetBrains IDE,可以直接在编辑器中查看并合并来自 GitHub Copilot 的…