本文小编为大家详细介绍“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 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如果实现购物车功能”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注创新互联行业资讯频道。
网站栏目:vue如果实现购物车功能
URL标题:https://www.cdcxhl.com/article24/ijcice.html
成都网站建设公司_创新互联,为您提供外贸网站建设、云服务器、品牌网站建设、网站建设、外贸建站、建站公司
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联