vue如果实现购物车功能
本文小编为大家详细介绍“vue如果实现购物车功能”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue如果实现购物车功能”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
原理分析和实现
注意想实现该功能,需要学习:Vue学习之路(基础篇),深入的了解每个指令的使用
首先,还是先把布局写好,和引入vue,准备vue实例,这个不多说,代码如下
<!DOCTYPE html>
<html lang="en" xmlns:v-bind="http://www.w3.org/1999/xhtml">
<head>
<meta charset="UTF-8">
<title>vue实现购物车</title>
</head>
<body>
<div id="app">
<h4>购物车</h4>
名称:<input style="width:60px" type="text" v-model="nameValue"> <br/>
单价:<input style="width:60px" type="text" v-model="priceValue"> <br/>
数量:<input style="width:60px" type="text" v-model="countValue">
<button @click="add()">添加购物车</button>
<hr/>
<table border="1">
<tr>
<td>名称</td>
<td>单价</td>
<td>数量</td>
<td>小计</td>
</tr>
<tr v-for="(product,index) in products">
<td>{{product.name}}</td>
<td>{{product.price}}</td>
<td>
<button @click="desc(index)">-</button>
{{product.count}}
<button @click="incr(index)">+</button>
</td>
<td>{{product.price*product.count}}</td>
</tr>
<tr>
<td colspan="4">总价:{{total()}}元</td>
</tr>
</table>
</div>
</body>
</html>
<script class="lazy" data-src="js/vue-min.js"></script>
<script>
new Vue({
el: "#app",
data: {
products: [
{name: "秋裤", price: "81", count: 2},
{name: "华为", price: "5810", count: 1},
],
nameValue: "",
priceValue: "",
countValue: 0,
totalPrice:0
},
methods: {
incr(index) {
this.products[index].count++;
},
desc(index) {
this.products[index].count--;
},
add() {
this.products.push({name: this.nameValue, price: this.priceValue, count: this.countValue});
this.nameValue = "";
this.priceValue = "";
this.countValue = 0;
},
total(){
var price=0;
for (var i = 0; i <this.products.length; i++) {
price+=this.products[i].price * this.products[i].count
}
return price.toFixed(2);
}
}
})
</script>
读到这里,这篇“vue如果实现购物车功能”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网行业资讯频道。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341