购物车里的项目有变化的时候,需要再更新一下购物车的总计金额 .. 就是这个 cart.total 的值 .. 在服务里添加一个函数 .. 名字是 updateCartTotal ..
函数里面先添加一个 total ... 用一下 db.get .. 得到 cart.items .. 下面用 map .. 需要 total .. 最后再用一个 value .. 它会得到购物车所有项目里的 total ..
下面要把这些值加到一块儿 .. 添加一个 value .. 用一下 total .. reduce 方法 .. 给它一个回调 .. 两个参数 .. v1 还有 v2 .. 方法里面返回的是 v1 加上 v2 的值 .. 初始值设置成 0 ..
这样得到的这个 value 就是总计的金额 ..
用 db.get .. 得到 cart .. 接着用 assign 更新一下它里面的 total 的值 .. 具体的值就是上面算出来的这个 value ... 最后执行一下 write ..
在添加购物车项目的接口里面 .. 用一下这个 updateCartTotal ..
打开 db.json .. 去掉购物车里的项目 .. 再到 http 客户端上,请求加入一个新的项目到购物车里面 ..
现在接口会更新 cart 里的 total 的值 .. 再试一下 ..
下面再添加一个新的项目 .. 产品 id 号是 2 ..
购物车的 total 的值就是购物车里的这两个项目里的 total 属性合计之后的值 ..