项目笔记23(尚品汇)

购物车操作

发送请求

当用户点击加入购物车时,应该将用户的数据存储到数据库中。
在这里插入图片描述
首先通过手册查看接口文档,发现接口为/api/cart/addToCart/{skuId}/{skuNum} POST请求。接下来去api文件夹下的index.js文件发送请求
在这里插入图片描述
发送请求完成之后,去vuex中的detail仓库设置actions如下所示,此处不需要存储数据,因为没有接收数据。
在这里插入图片描述
接下来回到详情页的加入购物查按钮,绑定点击事件,派发action并且传递所需参数。
在这里插入图片描述

在这里插入图片描述

根据请求成功与否决定是否进行路由跳转

注册添加到购物车页面的路由

首先将准备好的添加购物车页面的静态组件导入到项目中,然后再router文件夹中设置路由,具体设置如下所示。
在这里插入图片描述

判断是否跳转

设置完成之后,重新修改detail仓库中的action,当请求成功,返回ok,请求失败,返回错误。
在这里插入图片描述

然后回到detail组件利用try catch来根据成功与否决定是否跳转。具体代码如下所示
在这里插入图片描述

将详情页的信息带给添加到购物车路由并替换数据

需要给加入购物车组件传递商品信息以及商品数量。针对简单的商品数量这个数据,使用简单的query就可以进行存储。而复杂的产品信息(是一个对象)那么可以利用会话存储( 不持久,会话结束就消失 )。需要注意的是本地存储,会话存储存储的一般都是字符串,具体操作及代码如下所示
在这里插入图片描述
存储完成后,回到添加到购物车组件,接收数据。
在这里插入图片描述

在这里插入图片描述

购物车静态组件与添加到购物车组件修改

添加到购物车组件还有两个地方需要修改。如图所示,点击这两个按钮同样会进行路由跳转。
在这里插入图片描述
点击商品详情的跳转较为简单。具体代码如下所示。
在这里插入图片描述
在这里插入图片描述
而去购物车结算的跳转就相对麻烦一点,首先得先去之前写好的代码中拿到购物车的静态组件引入到项目中。
在这里插入图片描述
引入完成之后,同样注册路由
在这里插入图片描述
注册完成之后,给第二个按钮设置路由跳转
在这里插入图片描述

uuid游客身份获取购物车数据

首先书写获取购物车的数据的接口
在这里插入图片描述

接下来由于是个新模块所以建立一个新的仓库名为shopcart
在这里插入图片描述

在这里插入图片描述
仓库完成之后,开始vuex三连环,在三连环之前,先测试一下拿到的数据
在这里插入图片描述
在这里插入图片描述
得到的数据如下所示
在这里插入图片描述
可以发现没有拿到数据,这是因为服务器不知道给你谁的数据。假设用户很多,那么根据用户的不同返回的应该是不同的数据。为了方便演示这个效果,引入uuid。

封装一个固定的uuid
在这里插入图片描述
储存在detail仓库中。
在这里插入图片描述
接下来找到api文件夹下的request.js文件。利用请求头传递数据
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

购物车动态展示数据

动态展示数据

在这里插入图片描述

在这里插入图片描述

处理总价和全选按钮

在这里插入图片描述
在这里插入图片描述

处理产品数量

与上次产品数量处理不同的是,上次的产品数量处理不需要发送请求,在这里需要发送请求。
在这里插入图片描述
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Revin050

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值