用户登录

再发送一下这个添加到购物车的请求 .. 打开 db.json .. 你会发现,在 cart.items 里面,又出现了一个重复的项目 .. 如果请求添加同样的项目,可以只去更新一下项目的购买数量还有总计的金额 .. 先去掉这个重复的项目 ..

编辑一下添加购物车项目的接口 .. 组织好了要添加的项目以后 .. 再添加一个 result .. 它的值用一下 getCartItem 这个函数得到 .. 把产品的 id 号交给它 .. 这个函数可以返回在购物车里有没有指定产品 id 的项目 ..

下面判断一下 .. 如果找到了结果 ... 意思就是购物车里已经有要添加的项目了 .. 可以做点特别的处理 .. 设置一下 item 上的 quantity 的值 .. quantity .. 再加上找到的结果里的 quantity 的值 .. 相加的时候要用 parseInt 把它们转换成数字 ..

重新再设计一下项目的 total 的值 .. total ... 加上 result 里的 total 的值 ..

然后再用 updateCartItem 函数更新购物车项目 .. 使用它要提供一个 id .. 还有更新的项目 ..

再加上 else .. 如果购物车里还没有要添加的项目 .. 可以用 addCartItem 添加这个项目 ..

最后可以再响应一个 success ..

在上面再去定义需要的这两个方法 .. 一个是 getCartItem .. 这个函数有一个 id 参数 .. 函数里面添加一个 result .. 用一下 db 的 get 得到 cart 里的 items .. 接着再用 find .. 找到 product_id 的值是 id 参数值的项目 ..

用 value 方法得到找到的结果 .. 最后再返回找到的结果 ..

下面再定义一个函数 .. 名字是 updateCartItem .. 这个函数有两个参数 .. 要更新的项目的 id 号 .. 还有项目新的值 ..

添加一个 result .. 用一下 db .. get 得到 cart.items .. 用 find 先找到 product_id 的值是 id 的项目 .. 下面再用 assign 更新一下这个项目 .. 最后用 write() 确定写入 ..

return 这个 result ..

在 http 客户端,再试一下 .. 请求添加同样的项目 .. 回到 db.json .. 这回就没有添加重新的项目 .. 只是更新了一下已有项目的 quantity ... 还有 total 的值 ...

添加重复的项目到购物车(getCartItem,updateCartItem)《 电商小程序案例:购物车接口 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点