vuex的五個核心概念簡述

2021-10-21 13:45:48 字數 2731 閱讀 9516

vuex是vue.js應用設計的狀態管理架構,通俗理解,可以想象就是vue元件中的data

1.state=>基本資料來源

// 簡單的state

const store =

newvuex.store(,

})

2.mutatios=>提交更改資料的方法(同步)

// 儲存

// 第乙個引數是vuex中對應mutation的方法,第二個值就是存入vux中的值

this

.$store.

commit

('settargetuser'

,friend)

;// 取值

this

.$store.state.settargetuser

mutation小案例

//  倉庫內容

state:,}

,//修改資料的方法

mutations:}}

// 在vue檔案中

// 存到vux裡,對vuex資料進行修改

this

.$store.

commit

('changeuserinfo'

,res.data.data)

3.actions=>類似乙個容器,包裹mutations,讓木塔同時可以非同步

//儲存

this

.$store.

dispatch

('settargetuser'

,friend)

;//取值

this

.$store.getters.targetuser;

// 倉庫中

// action 類似於 mutation,不同在於:

// action 提交的是 mutation,而不是直接變更狀態。

// action 可以包含任意非同步操作。

mutations:

,somemutation

(state)

,1000)}

},actions:},

//另一種寫法

actions:

,args)

}// vue頁面中

methods:

},

4.getters=>基本資料派生的資料

從store的state中派生出的狀態。

getters接收state作為其第乙個引數,接受其他 getters 作為第二個引數,如不需要,第二個引數可以省略如下例子:

const store =

newvuex.store(,

getters:

,// 兩個引數

countdoubleanddouble:

function

(state, getters)}}

)------

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

--和state一樣,可以通過vue的computed獲得vuex的getters。

newvue(,

countdouble:

function()

, countdoubleanddouble:

function()

},//..})

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

mapgetters 輔助函式

mapgetters 輔助函式僅僅是將 store 中的 getters 對映到區域性計算屬性,與state類似

import

from

'vuex'

export

default}--

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

--如果你想將乙個 getter 屬性另取乙個名字,使用物件形式:

mapgetters

()

5.modules=>模組化vuex

Vuex的核心概念

state 提供唯一的公共資料源,所有共享的資料都要統一放到 store 的 state 中進行儲存。建立store資料來源,提供唯一公共資料 const store newvuex.store 1.1 元件訪問 state 中資料的第一種方式 this store.state.全域性資料名稱1.2...

Vuex核心概念Mutation Action

newvuex.store mutations commit increment mutations commit increment 10 mutations commit increment commit 當需要在物件上新增新屬性時,你應該 以新物件替換老物件。例如,利用 stage 3 的物件...

vuex的5個核心概念三(actions)

4.actions 非同步操作 在某些情況下確實在vuex中需要進行非同步操作,比如網路請求,這個時候就要將方法寫在actions中 actions類似於mutations,但是是用來替代mutations進行非同步操作的 在actions中提交mutation,並且可以包含任何的非同步操作。act...