Skip to content

Instantly share code, notes, and snippets.

@egoson
Last active November 12, 2021 09:30
Show Gist options
  • Select an option

  • Save egoson/0eb003e3a2b16e6758249d8cb037fe22 to your computer and use it in GitHub Desktop.

Select an option

Save egoson/0eb003e3a2b16e6758249d8cb037fe22 to your computer and use it in GitHub Desktop.
event handler for vuex module
// mutationTypes.js
export default {
setUser: '[USER] Set User',
removeUser: '[USER] Remove User'
}
// userModule.js
import mutationTypes form './mutationTypes'
export default {
mutations: {
[mutationTypes.setUser](state, payload) {
state.user = payload
}
}
}
// mutationHandler.js
export default (module) => {
return (store) => {
store.subscribe((mutation, store) => {
if (mutation.type.startsWith(module)) {
**do somethings**
} else {
}
})
}
}
// index.js
...
plugins: [
mutationHandler(['[USER]']),
],
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment