Vuex購物車資料狀態管理

2021-10-09 04:37:21 字數 3243 閱讀 6823

vuex是乙個專為vue.js應用程式開發的狀態管理模式。它採用集中式儲存管理應用的所有元件的狀態,這裡的狀態在一定程度上可以理解成資料狀態。vuex可以理解成乙個可以供獲取和修改的公共共享資料倉儲。

import vuex from

'vuex'

vue.

use(vuex)

var store =

newvuex.store

()

var vm =

newvue

()

import vuex from

'vuex'

vue.

use(vuex)

var car =

json

.parse

(localstorage.

getitem

('car')||

'')var store =

newvuex.store(,

mutations:})

if(!flag)

localstorage.

setitem

('car'

,json

.stringify

(state.car))}

,updategoodsinfo

(state, goodsinfo)})

localstorage.

setitem

('car'

,json

.stringify

(state,car))}

,removeformcar

(state, id)})

},updategoodsselected

(state, info)})

localstorage.

setitem

('car'

,json

.stringify

(state,car))}

},getters:

)return c

},getgoodscount

(state)

state.car.

foreach

(item =>

)return},

getgoodsselected

(state)

state.car.

foreach

(item =>

)return o

},getgoodscountandamount

(state)

state.car.

foreach

(item =>})

return o

}}})

="shopcar-container"

>

="goods-list"

>

="mui-card" v-

for=

"item in goodslist"

:key=

"item.id"

>

="mui-card-content"

>

="mui-card-content-inner"

>

switch v-model=

"$store.getters.getgoodsselected[item.id]" @change=

"selectedchanged(item.id, $store.getters.getgoodsselected[item.id])"

>

<

/mt-

switch

>

"item.thumb_path"

>

="info"

>

}<

/h1>

="price"

>¥

}<

/span>

"$store.getters.getgoodscount[item.id]"

:goodsid=

"item.id"

>

<

/numbox>

"#" @click.prevent=

"remove(item.id, i)"

>刪除<

/a>

<

/p>

<

/div>

<

/div>

<

/div>

<

/div>

<

/div>

="mui-card"

>

="mui-card-content"

>

="mui-card-content-inner jiesuan"

>

="left"

>

總計(不含運費)

<

/p>

已勾選商品

="red"

>

}<

/span>件,總價

="red"

>¥

}<

/span>

<

/p>

<

/div>

<

/div>

"danger"

>去結算<

'資料介面'

+ idarr.

join

(","))

.then

(result =>})

;},remove

(id, index)

,selectedchanged

(id, val))}

},components:

[ numbox

]}<

/script>

Vuex案例 購物車

購物車 demo,帶你理解並使用 vuex 狀態管理 購物車 vuex 中建立兩個模組,分別用來記錄商品列表和購物車的狀態,store 的結構 store modules cart.js production.js index.js 檢視結構 view cart index.vue home ind...

vuex實現購物車邏輯

在小型專案中,元件與元件之間通訊比較簡單。父元件可以使用pros向子元件傳遞資料,子元件可以通過 emit向父元件傳遞事件和資料,一旦狀態管理多了,就會變得十分混亂。由於狀態零散的分布在許多元件和元件之間的互動中,大型應用複雜度也經常逐漸增長。vuex狀態管理庫可以很方便的統一管理專案的狀態,無論是...

購物車業務邏輯(vuex)

list 列表頁 1 傳送ajax請求,獲取相應的資料 2 給每乙個上平新增乙個點選事件 3 每乙個商品都要有乙個id 4 當點選商品時,將商品id值傳遞給詳情頁 details 詳情頁 1 當進入詳情頁的時候通過url位址拿到商品的id 2 傳送ajax請求,從資料庫中獲取id相對應的商品,進行返...