persist task store

This commit is contained in:
Julien Calixte
2023-04-09 10:33:05 +02:00
parent d0f638077a
commit eed7255173
2 changed files with 18 additions and 6 deletions

View File

@@ -1,6 +1,6 @@
import { createApp } from 'vue'
import { createPinia } from 'pinia' import { createPinia } from 'pinia'
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'
import { createApp } from 'vue'
import App from './App.vue' import App from './App.vue'
import router from './router' import router from './router'
@@ -8,7 +8,7 @@ import './assets/main.css'
const app = createApp(App) const app = createApp(App)
app.use(createPinia()) app.use(createPinia().use(piniaPluginPersistedstate))
app.use(router) app.use(router)
app.mount('#app') app.mount('#app')

View File

@@ -1,8 +1,12 @@
import { defineStore } from 'pinia' import { defineStore } from 'pinia'
import type { Taskable } from '../interfaces/taskable' import type { Taskable } from '../interfaces/taskable'
interface StoredTaskable extends Omit<Taskable, 'date'> {
date: string
}
export interface TaskStoreState { export interface TaskStoreState {
tasks: Taskable[] tasks: StoredTaskable[]
} }
export const useTaskStore = defineStore('task-store', { export const useTaskStore = defineStore('task-store', {
@@ -11,7 +15,15 @@ export const useTaskStore = defineStore('task-store', {
}), }),
actions: { actions: {
saveTask(task: Taskable) { saveTask(task: Taskable) {
this.tasks.push(task) this.tasks.push({
...task,
totalEstimation: task.totalEstimation,
date: task.date.toISOString()
})
},
reset() {
this.tasks = []
} }
} },
persist: true
}) })