Try to move perstisting to stores

This commit is contained in:
2022-02-10 16:30:42 +00:00
parent 21dcd7837b
commit 0e342f2bcf
3 changed files with 20 additions and 21 deletions

View File

@ -2,7 +2,7 @@ import { createApp } from 'vue'
import App from './App.vue'
import './index.css'
import router from './router'
import { createPinia } from 'pinia'
import { createPinia, SubscriptionCallbackMutation } from 'pinia'
import { useBudgetsStore } from './stores/budget';
import { useSessionStore } from './stores/session';
import { useSettingsStore } from './stores/settings';
@ -22,22 +22,11 @@ router.beforeEach(async (to, from, next) => {
next();
})
function saveStateToLocalStorage() {
const sessionStore = useSessionStore();
const budgetStore = useBudgetsStore();
const accountStore = useAccountStore();
const settingsStore = useSettingsStore();
let persistedState = {
Session: sessionStore,
CurrentBudgetID: budgetStore.CurrentBudgetID,
CurrentAccountID: accountStore.CurrentAccountID,
ExpandMenu: settingsStore.ExpandMenu,
ShowMenu: settingsStore.ShowMenu
}
localStorage.setItem('store', JSON.stringify(persistedState));
function saveStateToLocalStorage(mutation : SubscriptionCallbackMutation<any>, state : any) {
localStorage.setItem(mutation.storeId, JSON.stringify(state));
console.log("saving to local storage", mutation)
}
useSettingsStore().$subscribe(() => saveStateToLocalStorage);
useBudgetsStore().$subscribe(() => saveStateToLocalStorage);
useSessionStore().$subscribe(() => saveStateToLocalStorage);
useSettingsStore().$subscribe(saveStateToLocalStorage);
useBudgetsStore().$subscribe(saveStateToLocalStorage);
useSessionStore().$subscribe(saveStateToLocalStorage);