Skip to content
This repository has been archived by the owner on Aug 8, 2023. It is now read-only.
/ vuex-reset Public archive

A Vuex plugin that makes restoring initial state to the store simple

License

Notifications You must be signed in to change notification settings

ianwalter/vuex-reset

Repository files navigation

@ianwalter/vuex-reset

A Vuex plugin that makes restoring initial state to the store simple

npm page CI

Resources

Installation

pnpm add @ianwalter/vuex-reset

Usage

import VuexReset from '@ianwalter/vuex-reset'

const store = new Vuex.Store({
  plugins: [VuexReset()],
  state: {
    message: 'Welcome!',
    mutations: {
      // A no-op mutation must be added to serve as a trigger for a reset. The
      // name of the trigger mutation defaults to 'reset' but can be specified
      // in options, e.g. VuexReset({ trigger: 'data' }).
      reset: () => {}
    }
  }
})

// Reset the store to it's initial state.
store.commit('reset')

You can also reset a namespaced module to it's initial state, for example:

const store = new Vuex.Store({
  plugins: [VuexReset()],
  state: {
    message: 'Welcome!'
  },
  modules: {
    car: {
      namespaced: true,
      state: {
        brand: 'Honda'
      },
      mutations: {
        reset: () => {}
      }
    }
  }
})

// Reset the car module to it's initital state.
store.commit('car/reset')

Related

  • vue-component-reset - A Vue.js component mixin that makes restoring initial state to the component simple

@ianwalter/vuex-reset for enterprise

Available as part of the Tidelift Subscription

The maintainers of @ianwalter/vuex-reset and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. Learn more.

License

Hippocratic License - See LICENSE

 

Created by Ian Walter