Vue計(jì)算屬性中reduce方法實(shí)現(xiàn)遍歷方式
vue計(jì)算屬性reduce方法實(shí)現(xiàn)遍歷
在前端頁面中要實(shí)現(xiàn)一個(gè)商品購物車的遍歷來計(jì)算出總價(jià)格,很多小伙伴都會(huì)想到用循環(huán),可是這樣編寫的代碼語句過于臃腫
下面我們來學(xué)習(xí)一下reduce方法實(shí)現(xiàn)遍歷計(jì)算出商品總價(jià)格
未登錄購物車:選中商品
在頁面中,每個(gè)購物車商品左側(cè),都有一個(gè)復(fù)選框,用戶可以選擇部分商品進(jìn)行下單,而不一定是全部:
我們定義一個(gè)selected變量,記錄所有被選中的商品:
選中一個(gè)
我們給商品前面的復(fù)選框與selected綁定,并且指定其值為當(dāng)前購物車商品:
初始化全選
我們?cè)诩虞d完成購物車查詢后,初始化全選:
計(jì)算總價(jià)格(使用reduce方法)
然后編寫一個(gè)計(jì)算屬性,計(jì)算出選中商品總價(jià)格:
computed:{ //計(jì)算總價(jià)格 //數(shù)組的reduce()方法: /** * 參數(shù)一: 一個(gè)函數(shù)(使用箭頭函數(shù))代表運(yùn)算邏輯 * 函數(shù)的兩個(gè)參數(shù) * c1: 用于存儲(chǔ)累計(jì)的結(jié)果 * c2: 當(dāng)前需要運(yùn)算的元素 * 參數(shù)二: 默認(rèn)值 */ totalPrice(){ return this.selected.reduce((c1,c2)=>c1+c2.price*c2.num,0); } },
在頁面中展示總價(jià)格:
效果:
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue-cli項(xiàng)目獲取本地json文件數(shù)據(jù)的實(shí)例
下面小編就為大家分享一篇Vue-cli項(xiàng)目獲取本地json文件數(shù)據(jù)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-03-03基于vue.js路由參數(shù)的實(shí)例講解——簡單易懂
下面小編就為大家?guī)硪黄趘ue.js路由參數(shù)的實(shí)例講解——簡單易懂。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-09-09Vue3 組合式函數(shù)Composable最佳實(shí)戰(zhàn)
這篇文章主要為大家介紹了Vue3 組合式函數(shù)Composable最佳實(shí)戰(zhàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06VUE DEMO之模擬登錄個(gè)人中心頁面之間數(shù)據(jù)傳值實(shí)例
今天小編就為大家分享一篇VUE DEMO之模擬登錄個(gè)人中心頁面之間數(shù)據(jù)傳值實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-10-10