vue实战记录(三)- vue实现购物车功能之渲染商品列表
vue实战,一步步实现vue购物车功能的过程记录,课程与素材来自慕课网,自己搭建了express本地服务器来请求数据
作者:狐狸家的鱼
本文链接:vue实战-实现购物车功能(三)
GitHub:sueRimn
模仿网页考拉的购物车样式进行了一些修改,以上图片就是渲染后的效果。
一、cart.js获取数据
通过AJAX获取本地的json数据,这里会出现跨域问题,还好提前搭建了本地服务器,可以成功获取数据渲染界面。
当通过get获取地址数据时,可以在调试界面看到我们需要的数据有哪些,从而获取数据的id,
this有可能代表不同的对象,而我们希望_this代表最初的对象,所以声明:
let _this = this;
而我们需要获取商品列表,所以需要把获取到的数据赋给data,然后渲染到界面。
_this.productList = res.data.result.list;
_this.totalMoney = res.data.totalMoney;
完整代码:
const vm = new Vue({
el:'#app',
data: {
totalMoney: 0,//总金额
productList: [],//商品列表 },
filters: { },
mounted: function() {//挂载 钩子 实例插入文档
this.cartView();
},
methods: {
cartView: function() {
let _this = this;
//获取数据,返回结果
this.$http.get("../data/cartData.json", {"id":123}).then(res => {
_this.productList = res.data.result.list;
_this.totalMoney = res.data.totalMoney;
});
}
},
})
二、渲染界面
在渲染的地方都做了相应的注释
</div>
<ul class="cart-item-list">
<!-- 列表渲染-对象渲染 -->
<li v-for="(item, index) in productList" :key="index">
<div class="cart-tab-1">
<div class="cart-item-check">
<a href="javascript:void 0" class="item-check-btn">
<svg class="icon icon-ok"><use xlink:href="#icon-ok"></use></svg>
</a>
</div>
<div class="cart-item-pic">
<!-- 商品图片 -->
<img :src="item.productImage" alt="口红">
</div>
<div class="cart-item-title">
<!-- 商品名字 -->
<div class="item-name">{{item.productName}}</div>
</div>
<div class="item-include">
<dl>
<dt>赠送:</dt>
<!-- 赠品 -->
<dd v-for="part in item.parts" v-text="part.partsName" :key="item.id"></dd>
</dl>
</div>
</div>
<div class="cart-tab-2">
<!-- 商品单价 -->
<div class="item-price">{{item.productPrice}}</div>
</div>
<div class="cart-tab-3">
<div class="item-quantity">
<div class="select-self select-self-open">
<div class="quantity">
<a href="javascript:void 0"></a>
<!-- 商品数量 -->
<input type="text" value="0" disabled v-model="item.productQuantity">
<a href="javascript:void 0" @click="add">+</a>
</div>
</div>
<div class="item-stock">有货</div>
</div>
</div>
<div class="cart-tab-4">
<!-- 商品总金额=单价*数量 -->
<div class="item-price-total">{{item.productPrice*item.productQuantity}}</div>
</div>
<div class="cart-tab-5">
<div class="cart-item-operation">
<a href="javascript:void 0" class="item-edit-btn">
<svg class="icon icon-del"><use xlink:href="#icon-del" ></use></svg>
</a>
<p>移入我的收藏</p>
</div>
</div>
</li>
</ul>
</div>
vue实战记录(三)- vue实现购物车功能之渲染商品列表的更多相关文章
- vue实战(一):利用vue与ajax实现增删改查
vue实战(一):利用vue与ajax实现增删改查: <%@ page pageEncoding="UTF-8" language="java" %> ...
- Vue2+VueRouter2+webpack 构建项目实战(四)接通api,先渲染个列表
Vue2+VueRouter2+webpack 构建项目实战(四)接通api,先渲染个列表: Vue2+VueRouter2+Webpack+Axios 构建项目实战2017重制版(一)基础知识概述
- vue实战记录(五)- vue实现购物车功能之商品总金额计算和单选全选删除功能
vue实战,一步步实现vue购物车功能的过程记录,课程与素材来自慕课网,自己搭建了express本地服务器来请求数据 作者:狐狸家的鱼 本文链接:vue实战-实现购物车功能(五) GitHub:sue ...
- vue实战记录(二)- vue实现购物车功能之创建vue实例
vue实战,一步步实现vue购物车功能的过程记录,课程与素材来自慕课网,自己搭建了express本地服务器来请求数据 作者:狐狸家的鱼 本文链接:vue实战-实现购物车功能(二) GitHub:sue ...
- vue实战记录(六)- vue实现购物车功能之地址列表选配
vue实战,一步步实现vue购物车功能的过程记录,课程与素材来自慕课网,自己搭建了express本地服务器来请求数据 作者:狐狸家的鱼 本文链接:vue实战-实现购物车功能(六) GitHub:sue ...
- vue实战记录(四)- vue实现购物车功能之过滤器的使用
vue实战,一步步实现vue购物车功能的过程记录,课程与素材来自慕课网,自己搭建了express本地服务器来请求数据 作者:狐狸家的鱼 本文链接:vue实战-实现购物车功能(四) GitHub:sue ...
- vue实战记录(一)- vue实现购物车功能之前提准备
vue实战,一步步实现vue购物车功能的过程记录,课程与素材来自慕课网,自己搭建了express本地服务器来请求数据 作者:狐狸家的鱼 本文链接:vue实战-实现购物车功能(一) GitHub:sue ...
- Vue学习计划基础笔记(三)-class与style绑定,条件渲染和列表渲染
Class与style绑定.条件渲染和列表渲染 目标: 熟练使用class与style绑定的多种方式 熟悉v-if与v-for的用法,以及v-if和v-for一起使用的注意事项 class与style ...
- Java秒杀实战 (三)秒杀基本功能开发
转自:https://blog.csdn.net/qq_41305266/article/details/80991687 一.两次MD5 1. 用户端: PASS = MD5( 明文 + 固定 Sa ...
随机推荐
- angular反向代理配置
Angular-cli 是基于webpack 的一套针对提升angular开发体验的命令行工具. 开发vue的时候,基于webpack的时候当时配置一个反向代理以完全实现前后端分离的体验,既然webp ...
- Delphi连接MySql(待测试验证,使用mysql.pas未通过)
要在一个Delphi程序中调用Mysql数据库,查到有个资料如下,待验证,验证后会给出结果.暂时做个标记 已经验证,验证日期:2018.6.18 验证结果:不可行 验证工具:XE7,mysql5.5. ...
- Kubernetes Dashboard - 每天5分钟玩转 Docker 容器技术(173)
前面章节 Kubernetes 所有的操作我们都是通过命令行工具 kubectl 完成的.为了提供更丰富的用户体验,Kubernetes 还开发了一个基于 Web 的 Dashboard,用户可以用 ...
- c/c++ 网络编程 UDP up/down 网卡
网络编程 UDP up/down 网卡 在程序里动态改变网卡的状态.注意:程序运行需要root权限. 程序运行的方法: sudo ./a.out 1,关闭网卡 #include <stdio.h ...
- git 初探
1,创建GIT代码仓库 git init 2,添加修改到缓存区 git add filename 3,提交缓存区的修改 git commit -m "任意文字(便于自己记忆)" 4 ...
- Github上如何查看当前最流行的开源项目
先声明下:只针对初学者,大神的话勿喷. 针对题标的这个问题,按照如下步骤操作即可: 进入Github网站后,显示的页面如下所示: 点击"Explore"链接,进入如下页面: 页面上 ...
- SQLServer之CHECK约束
CHECK约束添加规则 1.CHECK 约束用于限制列中的值的范围. 2.Check约束通过逻辑表达式来判断数据的有效性,用来限制输入一列或多列的值的范围,在列中更新数据时,所要输入的内容必须满足Ch ...
- IDEA包名显示设置
项目结构视图右上角那个齿轮 选择[Compact Empty Middle Packages],包会合并显示 [Hide Empty Middle Packages]去掉前面的√,不分层级显示
- TK2 USB修复
https://www.jianshu.com/p/bb4587014349 开发板刷机过程全程联网 除了Jetson TX2之外,您还需要另一台带有Intel或AMD x86处理器的台式机或笔记本电 ...
- 看门狗芯片--SP706SEN--调试记录
一.前因后果 工程中,设备为了稳定可靠,会增加外部看门狗,但是外部看门狗一旦启动,就停不下来,必须在固定的时间范围内进行喂狗,不然看门狗芯片就会产生一个复位信号复位MCU.以前大家都认为看门狗一旦工作 ...