使用vue.js怎么實現(xiàn)一個購物車添加商品組件

今天就跟大家聊聊有關(guān)使用vue.js怎么實現(xiàn)一個購物車添加商品組件,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),綠春企業(yè)網(wǎng)站建設(shè),綠春品牌網(wǎng)站建設(shè),網(wǎng)站定制,綠春網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,綠春網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。

代碼

<template>
<div class="cartcontrol">
 <!--商品減一區(qū)域-->
 <div class="reduce" v-show="food.count>0">
  <i class="icon-remove_circle_outline"></i>
 </div>
 <!--商品數(shù)量區(qū)域-->
 <div class="num" v-show="food.count>0">4</div>
 <!--商品加一區(qū)域-->
 <div class="add" @click="addCart">
  <i class="icon-add_circle"></i>
 </div>
</div>
</template>
<script>
export default {
  name: "Cartcontrol",
  props:{
    food:{
      type:Object
    }
  },
  methods:{
    //添加購物車商品數(shù)量
    addCart(ele){
      if(!ele._constructed){
        //better-scroll的派發(fā)事件scroll的event和pc端瀏覽器的點擊事件的event有個
        // 屬性區(qū)別_constructed,pc端瀏覽器的點擊事件的event中是沒有這個屬性的
        return;
      }
      //一開始food中是沒有商品數(shù)量count
      if(!this.food.count){
        // this.food.count = 1;count不是food對象中的屬性,直接這樣寫,在dom渲染的時候是無法感應(yīng)到count的變化
        this.$set(this.food,'count',1);
      }else{
        this.food.count++;
      }
      console.log(this.food.count);
    }
  }
}
</script>
<style scoped lang="stylus">

.cartcontrol

display flex
height .48rem
align-items center
.num
  font-size.2rem
  width .48rem
  text-align center
  color rgb(147,153,159)
.reduce,.add
  font-size .4rem
  color rgb(0,160,220)
</style>

對象中添加新的屬性,如果更新此屬性的值,是不會更新視圖的

addCart(ele){
if(!ele._constructed){
        //better-scroll的派發(fā)事件scroll的event和pc端瀏覽器的點擊事件的event有個
        // 屬性區(qū)別_constructed,pc端瀏覽器的點擊事件的event中是沒有這個屬性的
        return;
      }
      //一開始food中是沒有商品數(shù)量count
      if(!this.food.count){
        this.food.count = 1;count不是food對象中的屬性,直接向food添加新屬性count,
        // 當count值發(fā)生變化的時候在dom渲染的時候是無法感應(yīng)到count的變化
      }else{
        this.food.count++;
      }
      console.log(this.food.count);
    }

解決方法:使用$set可以觸發(fā)更新視圖,這樣當count發(fā)生變化的時候,$set去觸發(fā)更新視圖 addCart(ele){

if(!ele._constructed){
        //better-scroll的派發(fā)事件scroll的event和pc端瀏覽器的點擊事件的event有個
        // 屬性區(qū)別_constructed,pc端瀏覽器的點擊事件的event中是沒有這個屬性的
        return;
      }
      //一開始food中是沒有商品數(shù)量count
      if(!this.food.count){
        // this.food.count = 1;count不是food對象中的屬性,直接向food添加新屬性count,
        // 當count值發(fā)生變化的時候在dom渲染的時候是無法感應(yīng)到count的變化
        this.$set(this.food,'count',1);
      }else{
        this.food.count++;
      }
      console.log(this.food.count);
    }

看完上述內(nèi)容,你們對使用vue.js怎么實現(xiàn)一個購物車添加商品組件有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。

新聞標題:使用vue.js怎么實現(xiàn)一個購物車添加商品組件
網(wǎng)址分享:http://muchs.cn/article40/ihjeeo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護、網(wǎng)站排名網(wǎng)站設(shè)計公司、域名注冊品牌網(wǎng)站建設(shè)、網(wǎng)站設(shè)計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)