LocalStorageCollectionConfig

Interface: LocalStorageCollectionConfig<TExplicit, TSchema, TFallback>

Definiert in: packages/db/src/local-storage.ts:61

Konfigurationsschnittstelle für localStorage-Sammlungsoptionen

Bemerkungen

Typauflösung folgt einer Prioritätsreihenfolge

  1. Wenn Sie einen expliziten Typ über einen generischen Parameter angeben, wird dieser verwendet
  2. Wenn kein expliziter Typ, aber ein Schema angegeben wird, wird der Ausgabetyp des Schemas abgeleitet
  3. Wenn weder ein expliziter Typ noch ein Schema angegeben wird, wird der Fallback-Typ verwendet

Sie sollten ENTWEDER einen expliziten Typ ODER ein Schema angeben, aber nicht beides, da dies zu Konflikten führen würde.

Typparameter

TExplicit = unknown

Der explizite Typ der Elemente in der Collection (höchste Priorität)

TSchema erweitert StandardSchemaV1 = never

Der Schema-Typ für Validierung und Typableitung (zweite Priorität)

TFallback erweitert object = Record<string, unknown>

Der Fallback-Typ, wenn kein expliziter Typ oder kein Schema-Typ angegeben wird

Eigenschaften

getKey()

ts
getKey: (item) => string | number;
getKey: (item) => string | number;

Definiert in: packages/db/src/local-storage.ts:88

Parameter

item

ResolveType

Gibt zurück

string | number


id?

ts
optional id: string;
optional id: string;

Definiert in: packages/db/src/local-storage.ts:86

Sammlungsbezeichner (standardmäßig "local-collection:{storageKey}", wenn nicht angegeben)


onDelete()?

ts
optional onDelete: (params) => Promise<any>;
optional onDelete: (params) => Promise<any>;

Definiert in: packages/db/src/local-storage.ts:114

Optionale asynchrone Handler-Funktion, die vor einer Delete-Operation aufgerufen wird.

Parameter

params

DeleteMutationFnParams<ResolveType<TExplicit, TSchema, TFallback>>

Objekt, das Transaktions- und Collection-Informationen enthält

Gibt zurück

Promise<any>

Promise, das zu einem beliebigen Wert aufgelöst wird


onInsert()?

ts
optional onInsert: (params) => Promise<any>;
optional onInsert: (params) => Promise<any>;

Definiert in: packages/db/src/local-storage.ts:96

Optionale asynchrone Handler-Funktion, die vor einer Insert-Operation aufgerufen wird.

Parameter

params

InsertMutationFnParams<ResolveType<TExplicit, TSchema, TFallback>>

Objekt, das Transaktions- und Collection-Informationen enthält

Gibt zurück

Promise<any>

Promise, das zu einem beliebigen Wert aufgelöst wird


onUpdate()?

ts
optional onUpdate: (params) => Promise<any>;
optional onUpdate: (params) => Promise<any>;

Definiert in: packages/db/src/local-storage.ts:105

Optionale asynchrone Handler-Funktion, die vor einer Update-Operation aufgerufen wird.

Parameter

params

UpdateMutationFnParams<ResolveType<TExplicit, TSchema, TFallback>>

Objekt, das Transaktions- und Collection-Informationen enthält

Gibt zurück

Promise<any>

Promise, das zu einem beliebigen Wert aufgelöst wird


schema?

ts
optional schema: TSchema;
optional schema: TSchema;

Definiert in: packages/db/src/local-storage.ts:87


storage?

ts
optional storage: StorageApi;
optional storage: StorageApi;

Definiert in: packages/db/src/local-storage.ts:75

Storage-API zur Verwendung (standardmäßig window.localStorage) Kann jedes Objekt sein, das die Storage-Schnittstelle implementiert (z. B. sessionStorage)


storageEventApi?

ts
optional storageEventApi: StorageEventApi;
optional storageEventApi: StorageEventApi;

Definiert in: packages/db/src/local-storage.ts:81

Storage-Ereignis-API zur Verwendung für die plattformübergreifende Synchronisierung (standardmäßig window) Kann jedes Objekt sein, das addEventListener/removeEventListener für Storage-Ereignisse implementiert


storageKey

ts
storageKey: string;
storageKey: string;

Definiert in: packages/db/src/local-storage.ts:69

Der Schlüssel zur Speicherung der Sammlungsdaten in localStorage/sessionStorage


sync?

ts
optional sync: SyncConfig<ResolveType<TExplicit, TSchema, TFallback>, string | number>;
optional sync: SyncConfig<ResolveType<TExplicit, TSchema, TFallback>, string | number>;

Definiert in: packages/db/src/local-storage.ts:89

Unsere Partner
Code Rabbit
Electric
Prisma
Bytes abonnieren

Ihre wöchentliche Dosis JavaScript-Nachrichten. Jeden Montag kostenlos an über 100.000 Entwickler geliefert.

Bytes

Kein Spam. Jederzeit kündbar.

Bytes abonnieren

Ihre wöchentliche Dosis JavaScript-Nachrichten. Jeden Montag kostenlos an über 100.000 Entwickler geliefert.

Bytes

Kein Spam. Jederzeit kündbar.