getters
getters就是在state上进行的封装
getters
import { createStore } from 'vuex'
interface IAdmin {
id: number
adminName: string
}
export interface IState {
admin: IAdmin
}
const state: IState = {
admin: { adminName: "yuemaedu", id: 1 } as IAdmin
}
const getters = {
getAdmin(state?: IState) {
return state?.admin
}
}
const store = createStore({
state: state,
getters: getters
})
export default store
定义getter
const getters = {
getAdmin(state?: IState) {
return state?.admin
}
}
注册
const store = createStore({
state: state,
getters: getters
})
getter派生方法
const getters = {
getAdmin(state?: IState) {
return state?.admin
},
isAdmin: (state?: IState) => (id: number) => {
return id === state?.admin.id
}
}
使用派生的方法
const isAdmin = store.getters.isAdmin(2)
示例运行的结果
{ "adminName": "yuemaedu", "id": 1 }{ "adminName": "yuemaedu", "id": 1 }false