PersistedOptions
Says where persisted() stores its value and the schema a stored value must still match.
Verwendung
Persist a preference
Dieser Typ wird verwendet von persisted
import { Text, Toggle, VStack, persisted, type Schema } from 'kuito';
const booleanSchema: Schema<boolean> = {
'~standard': {
version: 1,
vendor: 'example',
validate: (value) =>
typeof value === 'boolean' ? { value } : { issues: [{ message: 'Expected boolean' }] },
},
};
export function Preferences() {
const wifiOnly = persisted(true, { key: 'downloads.wifiOnly', schema: booleanSchema });
return (
<VStack gap={12}>
<Toggle label="Download on Wi-Fi only" checked={wifiOnly} />
<Text>{wifiOnly.value ? 'Wi-Fi only' : 'Any connection'}</Text>
</VStack>
);
}Typdeklaration
export interface PersistedOptions<T> {
/** The storage key the value lives under, as JSON. */
key: string;
/** What a stored value must be: anything else is a warning, and `initial`. */
schema: Schema<T>;
/** In the keychain, through secureStore, for small secrets. Its first read is asynchronous. */
secure?: boolean;
}Mitglieder 3
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
key | string | Ja | The storage key the value lives under, as JSON. |
schema | Schema<T> | Ja | What a stored value must be: anything else is a warning, and initial. |
secure | boolean | Nein | In the keychain, through secureStore, for small secrets. Its first read is asynchronous. |
Generiert aus den öffentlichen TypeScript-Deklarationen: Signaturen, Props und Standardwerte stammen aus der geprüften Quelle, Beschreibungen aus deren JSDoc. Kein Standardwert ist erfunden.