每日一题:购物车
购物车
介绍
网上购物已经成为现代人生活中不可或缺的一部分,那么人们最常用到的购物车功能又是如何实现的呢?
本题需要在已提供的基础项目中,使用 Vue 2.x 的知识,解决购物车商品管理过程中遇到的问题。
准备
开始答题前,需要先打开本题的项目文件夹,目录结构如下:
1 | ├── base.gif |
其中:
base.gif是初始效果图。effect.gif是最终实现的效果图。js/goods.js是数据文件。js/vue.js是 Vue 2.x 文件。css/index.css是样式文件。images是图片文件夹。index.html是页面布局及逻辑。
注意:打开环境后发现缺少项目代码,请手动键入下述命令进行下载:
1 | cd /home/project |
在浏览器中预览 index.html 页面,具体显示【见项目文件夹中的 base.gif 】,请使用浏览器或者 VS Code 查看 gif 图。
当前出现的问题是:
- 在“商品列表”中点击 N 次“加入购物车”按钮,会在购物车列表中出现 N 个该商品,且初始数量为 1。
- 在“购物车”中点击商品数据后的加号(“+”)按钮,会在购物车列表中重复出现该商品,且初始数量为 1。
- 在“购物车”中点击商品数据后的减号(“-”)按钮,并未将商品从购物车中移出。
目标
请在 index.html 文件中补全代码,最终实现购物车商品管理的功能。
注意:请勿修改 js/goods.js 文件中提供的数据!
具体需求如下:
(1)修改 addToCart 方法,实现将商品加入到购物车的功能。即:
- 点击“加入购物车”按钮后,如果购物车中不存在该商品,则将该商品添加到购物车末尾,并初始化数量为 1;
- 如果购物车中已存在该商品,则只在原数量上 +1 即可。
(2)完善 removeGoods 方法,实现移出购物车商品功能。即:
- 点击购物车商品后对应的减号(“-”)按钮,将其数量在原数量上 -1;
- 如果减后数量为 0,则将该商品从购物车中移除。
完成后的效果见文件夹下面的 gif 图,图片名称为 effect.gif(提示:可以通过 VS Code 或者浏览器预览 gif 图片)。
规定
- 请严格按照考试步骤操作,切勿修改考试默认提供项目中的文件名称、文件夹路径等。
- 请勿修改项目中提供的
id、class、函数名等名称,以免造成无法判题通过。 - 请勿修改
js/goods.js文件中提供的数据。
判分标准
- 本题完全实现题目目标得满分,否则得 0 分。
总通过次数: 667 | 总提交次数: 674 | 通过率: 99%
难度: 中等 标签: 2022, 省赛, Web 前端, Vue.js
1 | addToCart(goods) { |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 江月迟迟!
