Skip to content

hook functions for classy-vuex and @vue/composition-api

License

Notifications You must be signed in to change notification settings

Kbitt/classy-vuex-hooks

Repository files navigation

Classy Vuex Hooks

Vue composition api hooks for classy-vuex modules.

Currently compatible

Consult the classy-vuex README for documentation on writing modules.

This adds two functions to use as hooks for the new vue composition api: useModule and useMappedModule, which both work similar to classy-vuex's getModule function, but for hooks.

useModule

This function takes a module constructor and optionally a namespace (or ref to a namespace) and returns a ref to the module instance. If a ref is used for the namespace, the module can update when the namespace ref udpates.

useMappedModule

This function can be used like the mapComputed and mapMethods functions of classy-vuex. Pass a module constructor and optionally a namespace, and the result can be mapped to the setup return object, allowing all of the modules states, getters, mutations and actions to be passed to setup for a component.

Dynamic Modules

Both hooks can be used to dynamically register a module on demand. By supplying a factory function as a third argument, the module will be created if it does not already exist at the given namespace. Passing the factory as an options object along with a dispose configuration ({ delay?: number }), will cause usage of the module to be tracked, and when all components using the module (through the hook functions) have been unmounted, the module will be unregistered.

About

hook functions for classy-vuex and @vue/composition-api

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •