Html 代码:
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<div id="app">
<table>
<tr>
<th> 序号 </th>
<th> 商品名称 </th>
<th> 商品价格 </th>
<th> 购买数量 </th>
<th> 操作 </th>
</tr>
<tr v-for="iphone in Ip_Json">
<td>{{iphone.id}}</td>
<td>{{iphone.name}}</td>
<td>{{iphone.price}}</td>
<td>
<button v-bind:disabled="iphone.count === 0" v-on:click="iphone.count-=1">-</button>
{{iphone.count}}
<button v-on:click="iphone.count+=1">+</button>
</td>
<td>
<button v-on:click="iphone.count=0"> 移除 </button>
</td>
</tr>
</table>
总价:${{totalPrice()}}
</div>
js 代码:
var app = new Vue({
el: '#app',
data: {
Ip_Json: [{
id: 1,
name: 'iphone 8',
price: 5099,
count: 1
},
{
id: 2,
name: 'iphone xs',
price: 8699,
count: 1
},
{
id: 3,
name: 'iphone xr',
price: 6499,
count: 1
}]
},
methods:{totalPrice : function(){
var totalP = 0;
for (var i = 0,len = this.Ip_Json.length;i<len;i++) {totalP+=this.Ip_Json[i].price*this.Ip_Json[i].count;
}
return totalP;
}
}
})
css 代码:
table {border: 1px solid black;}
table {width: 100%;}
th {height: 50px;}
th, td {border-bottom: 1px solid #ddd;}