if-vuex
v1.0.9
Published
userful functions for vuex
Downloads
7
Readme
if-vuex
provide some useful functions to imporve the development experience
Functions
extendStore(store, name, module, persistedstates)
Extends Store instance (Vuex)
const name = 'example'
const module = {
namespaced: true,
state: {
name: 'Example Store',
version: 'beta',
counter: {
num: 0
}
},
getters: {
count: state => state.counter.num
},
mutations: {
increment(state, offset) {
state.counter.num += offset
}
},
actions: {
plus({commit}, offset) {
commit('increment', offset)
}
}
}
// Default
extendStore(store, 'example', module)
// vuex-persistedstate
extendStore(store, 'example', module, ['name'])
useStoreByModule(name, defaultStore?)
const {useRef, useRefs, commit, dispatch, getter, mapGetter} = useStoreByModule('example')
useRef('counter.num') // 0
userRefs(['counter.num', 'name', 'version']) // [0, 'Example Store', 'beta']
commit('increment', 2) // 2
dispatch('plus', 3) // 5
getter('count') // 5
mapGetter({'count': 'countNew'}) // {countNew: 5}
setStoreEnv (实验性质)
1.0.7起新增环境隔离,默认不开启。
新增环境设置, 当启用环境隔离的时候,将会根据预设的环境 生成多环境store, 也可以为多个应用进行分别存储
// Init
setStoreEnv({
preset: ["local", "development", "testing", "uat", "production"],
enable: true,
env: 'local'
})
// update Env
setStoreEnv({ env: 'development'})
getStoreEnv
1.0.7起新增环境隔离
··· const env = getStoreEnv('env') // computed 获取当前环境 const envEnable = getStoreEnv('enable') // computed 获取是否开启了环境隔离 ···