[feat] better store operation
This commit is contained in:
@@ -1,13 +1,7 @@
|
||||
import { store } from "tauri-plugin-valtio"
|
||||
import { useSnapshot } from "valtio"
|
||||
import { DEFAULT_STORE_CONFIG } from "."
|
||||
|
||||
// Usage:
|
||||
// import {appStore} from "@/store/app"
|
||||
// import { useSnapshot } from "valtio"
|
||||
// const app = useSnapshot(appStore.state)
|
||||
// { app.version }
|
||||
// () => appStore.setVersion("0.0.1")
|
||||
|
||||
const defaultValue = {
|
||||
version: "0.0.1",
|
||||
hasUpdate: false,
|
||||
@@ -18,26 +12,41 @@ const defaultValue = {
|
||||
|
||||
export const appStore = store("app", { ...defaultValue }, DEFAULT_STORE_CONFIG)
|
||||
|
||||
export const setVersion = (version: string) => {
|
||||
export const useAppStore = () => {
|
||||
void appStore.start
|
||||
const state = useSnapshot(appStore.state)
|
||||
|
||||
return {
|
||||
state,
|
||||
setVersion,
|
||||
setHasUpdate,
|
||||
setInited,
|
||||
setNotice,
|
||||
setUseMirror,
|
||||
resetAppStore,
|
||||
}
|
||||
}
|
||||
|
||||
const setVersion = (version: string) => {
|
||||
appStore.state.version = version
|
||||
}
|
||||
export const setHasUpdate = (hasUpdate: boolean) => {
|
||||
const setHasUpdate = (hasUpdate: boolean) => {
|
||||
appStore.state.hasUpdate = hasUpdate
|
||||
}
|
||||
export const setInited = (inited: boolean) => {
|
||||
const setInited = (inited: boolean) => {
|
||||
appStore.state.inited = inited
|
||||
}
|
||||
export const setNotice = (notice: string) => {
|
||||
const setNotice = (notice: string) => {
|
||||
appStore.state.notice = notice
|
||||
}
|
||||
export const setUseMirror = (useMirror: boolean) => {
|
||||
const setUseMirror = (useMirror: boolean) => {
|
||||
appStore.state.useMirror = useMirror
|
||||
}
|
||||
|
||||
export const resetAppStore = () => {
|
||||
const resetAppStore = () => {
|
||||
setVersion(defaultValue.version)
|
||||
setHasUpdate(defaultValue.hasUpdate)
|
||||
setInited(defaultValue.inited)
|
||||
setNotice(defaultValue.notice)
|
||||
setUseMirror(defaultValue.useMirror)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user