欢迎光临
我们一直在努力

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 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如果实现购物车功能”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注云搜网行业资讯频道。

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。