Skip to content
En esta página

Documentación de la API / pinia / DefineStoreOptions

Interfaz: DefineStoreOptions<Id, S, G, A>

pinia.DefineStoreOptions

Parámetro de opciones de defineStore() para almacenes de opciones. Puede extenderse para aumentar los almacenes con el API de plugins.

Vea

DefineStoreOptionsBase.

Tipado de los parámetros

NombreTipo
Idextiende string
Sextiende StateTree
GG
AA

Jerarquía

Propiedades

actions

Opcional actions: A & ThisType<A & UnwrapRef<S> & _StoreWithState<Id, S, G, A> & _StoreWithGetters<G> & PiniaCustomProperties<string, StateTree, _GettersTree<StateTree>, _ActionsTree>>

Objecto opcional de acciones.


getters

Opcional getters: G & ThisType<UnwrapRef<S> & _StoreWithGetters<G> & PiniaCustomProperties<string, StateTree, _GettersTree<StateTree>, _ActionsTree>> & _GettersTree<S>

Objecto opcional de getters.


id

id: Id

Código de string único para identificar el almacén en la aplicación.


state

Opcional state: () => S

Tipado de la declaración

▸ (): S

Función para crear un nuevo estado. Debe ser una función de flecha para asegurar tipado correcto.

Retorna

S

Métodos

hydrate

Opcional hydrate(storeState, initialState): void

Permite hidratar el almacén durante el SSR cuando se utilizan estados complejos (como refs que sólo existen del lado del cliente) en la definición del almacén y copiar el valor de pinia.state no es suficiente.

Ejemplo

Si en tu state utilizas customRefs, computeds, o refs que tienen un valor diferente en el Servidor y en el Cliente, es necesario que los hidrates manualmente. Por ejemplo, una ref personalizada que se almacena en el almacenamiento local:

ts
const useStore = defineStore('main', {
  state: () => ({
    n: useLocalStorage('key', 0)
  }),
  hydrate(storeState, initialState) {
    // @ts-expect-error: https://github.com/microsoft/TypeScript/issues/43826
    storeState.n = useLocalStorage('key', 0)
  }
})
const useStore = defineStore('main', {
  state: () => ({
    n: useLocalStorage('key', 0)
  }),
  hydrate(storeState, initialState) {
    // @ts-expect-error: https://github.com/microsoft/TypeScript/issues/43826
    storeState.n = useLocalStorage('key', 0)
  }
})

Parámetros

NombreTipoDescripción
storeStateUnwrapRef<S>el estado actual en el almacén
initialStateUnwrapRef<S>initialState

Returns

void

Lanzado bajo la Licencia MIT.