不卡AV在线|网页在线观看无码高清|亚洲国产亚洲国产|国产伦精品一区二区三区免费视频

學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 玩轉(zhuǎn)微信 > 微信小程序購(gòu)物車功能怎么開(kāi)發(fā)

微信小程序購(gòu)物車功能怎么開(kāi)發(fā)

時(shí)間: 錦暉1117 分享

微信小程序購(gòu)物車功能怎么開(kāi)發(fā)

  微信小程序購(gòu)物車功能是需要微信小程序開(kāi)發(fā)者開(kāi)發(fā)出來(lái)的哦,那么微信小程序購(gòu)物車功能怎么開(kāi)發(fā)呢?以下是學(xué)習(xí)啦小編為您帶來(lái)的關(guān)于微信小程序購(gòu)物車功能,希望對(duì)您有所幫助。

  微信小程序購(gòu)物車功能

  以往的購(gòu)物車,基本都是通過(guò)大量的 DOM 操作來(lái)實(shí)現(xiàn)。微信小程序其實(shí)跟 vue.js 的用法非常像,接下來(lái)就看看小程序可以怎樣實(shí)現(xiàn)微信購(gòu)物車功能。效果如下圖所示:

  單選、全選和取消,而且會(huì)隨著選中的商品計(jì)算出總價(jià),單個(gè)商品購(gòu)買(mǎi)數(shù)量的增加和減少

  刪除商品。當(dāng)購(gòu)物車為空時(shí),頁(yè)面會(huì)變?yōu)榭召?gòu)物車的布局。

  根據(jù)設(shè)計(jì)圖,我們可以先實(shí)現(xiàn)靜態(tài)頁(yè)面。接下來(lái),再看看一個(gè)購(gòu)物車需要什么樣的微信數(shù)據(jù)。

  首先是一個(gè)商品列表(carts),列表里的單品需要:商品圖(image),商品名(title),單價(jià)(price),數(shù)量(num),是否選中(selected),商品id(id)

  然后左下角的全選,需要一個(gè)字段(selectAllStatus)表示是否全選了

  右下角的總價(jià)(totalPrice)

  最后需要知道購(gòu)物車是否為空(hasList)

  知道了需要這些數(shù)據(jù),在頁(yè)面初始化的時(shí)候我們先定義好這些。

  微信代碼如下:

  購(gòu)物車列表數(shù)據(jù)我們一般是通過(guò)請(qǐng)求服務(wù)器拿到的數(shù)據(jù),所以我們放在生命周期函數(shù)里給 carts 賦值。想到每次進(jìn)到購(gòu)物車都要獲取購(gòu)物車的最新?tīng)顟B(tài),而onLoad和onReady只在初始化的時(shí)候執(zhí)行一次,所以我需要把請(qǐng)求放在 onShow 函數(shù)里。(這里先拿點(diǎn)假數(shù)據(jù)冒充一下吧)

  布局wxml

  修好之前寫(xiě)好的靜態(tài)頁(yè)面,綁定數(shù)據(jù)。

  雖然一個(gè)購(gòu)物車功能比較簡(jiǎn)單,但是里面涉及到微信小程序的知識(shí)點(diǎn)還是比較多的,適合新手練習(xí)掌握。

  選擇事件:

  點(diǎn)擊時(shí)選中,再點(diǎn)擊又變成沒(méi)選中狀態(tài),其實(shí)就是改變 selected 字段。通過(guò) data-index="{{index}}" 把當(dāng)前商品在列表數(shù)組中的下標(biāo)傳給事件。

  全選事件:

  全選就是根據(jù)全選狀態(tài) selectAllStatus 去改變每個(gè)商品的 selected。

  增減數(shù)量:

  點(diǎn)擊+號(hào),num加1,點(diǎn)擊-號(hào),如果num > 1,則減1。

  刪除商品:

  點(diǎn)擊刪除按鈕則從購(gòu)物車列表中刪除當(dāng)前元素,刪除之后如果購(gòu)物車為空,改變購(gòu)物車為空標(biāo)識(shí)hasList為false。

猜你喜歡:

1.微信小程序怎么實(shí)現(xiàn)飲食營(yíng)銷

2.微信小程序是什么東西

3.微信小程序如何開(kāi)發(fā)入門(mén)

4.微信小程序用什么語(yǔ)言開(kāi)發(fā)的

5.如何設(shè)計(jì)微信小程序

3747193