其他分享
首页 > 其他分享> > 使用vue制作一个简单的购物车案例

使用vue制作一个简单的购物车案例

作者:互联网

使用vue制作一个简单的购物车案例

实现简单的购物车效果,购买数量的增加,减少,商品价格随数量增加而增加,并可以移除所有的商品数量。
这是效果图
在这里插入图片描述

<style type="text/css">
        table {
            border: 1px solid black;
        }

        table {
            width: 100%;
        }

        th {
            height: 50px;
        }

        th,
        td {
            border-bottom: 1px solid #ddd;
            text-align: center;
        }
    </style>
<div id="app">
        <table>
            <tr>
                <th>序号</th>
                <th>商品名称</th>
                <th>商品价格</th>
                <th>购买数量</th>
                <th>操作</th>
            </tr>
            <tr v-for="snacks in Ip_Json"><!-- 遍历Ip_Json -->
                <td>{{snacks.id }}</td><!-- 获取Ip_Json里的id -->
                <td>{{snacks.name }}</td>
                <td>{{snacks.price }}</td>
                <td>
                <!-- v-bind:disabled="snacks.count === 0" 当购买数量=0时不会再减少 -->
                    <button v-bind:disabled="snacks.count === 0" 
                        v-on:click="snacks.count-=1">-</button>
                    {{ snacks.count }}
                    <button v-on:click="snacks.count+=1">+</button>
                </td>
                <td>
                    <button v-on:click="snacks.count=0">移除</button>
                </td>
            </tr>
        </table>
        总价:${{totalPrice()}}
    </div>
<script src="vue.js"></script>
    <script>
       	var app = new Vue({
				el: '#app',
				data: {
				//准备商品数据
					Ip_Json: [{
							id: 1,
							name: '花生',
							price: 5,
							count: 1
						},
						{
							id: 2,
							name: '瓜子',
							price: 8,
							count: 1
						},
						{
							id: 3,
							name: '核桃',
							price: 20,
							count: 1
						}
					]

				},
				methods: {
					totalPrice: function() {
						var sum = 0;
						for (var i = 0, len = this.Ip_Json.length; i < len; i++) {
						// 总价的计算
							sum += this.Ip_Json[i].price * this.Ip_Json[i].count;
						}
						return sum;
					}


				}
			})
    </script>

标签:count,vue,name,snacks,Ip,price,购物车,案例,id
来源: https://blog.csdn.net/qq_52959651/article/details/110521961