UserOptions
UserOptions — clase para gestionar la configuración personal del usuario actual. La instancia singleton está disponible después de la inicialización de Frame.
La configuración del usuario no anula los valores de configuración a nivel de aplicación.
ts
import { UserOptions } from '@flowlu/miniapp-jssdk'Métodos
getInstance
Devuelve la instancia singleton actual de UserOptions. Llamar solo después de la inicialización de Frame
ts
static getInstance(): UserOptionsdestroy
Elimina las suscripciones y libera los recursos
ts
destroy(): voidget
Devuelve todas las opciones (OptionsValues) o el valor de una sola opción (OptionValue) por identificador
ts
async get(): Promise<OptionsValues>ts
async get(optionId: string): Promise<OptionValue>| Parámetro | Tipo | Descripción |
|---|---|---|
optionId | string | Identificador de la opción |
set
Guarda varias opciones a la vez o el valor de una sola opción por identificador
ts
async set(values: OptionsValues): Promise<OptionsValues>| Parámetro | Tipo | Descripción |
|---|---|---|
values | OptionsValues | Objeto con opciones para guardar varios valores |
ts
async set(optionId: string, value: OptionValue): Promise<OptionValue>| Parámetro | Tipo | Descripción |
|---|---|---|
optionId | string | Identificador de la opción |
value | OptionValue | Valor de la opción |
Ejemplo
ts
import { App, UserOptions } from '@flowlu/miniapp-jssdk'
await App.initializeFrame()
const userOptions = UserOptions.getInstance()
// obtener el valor de una opción de usuario
const theme = await userOptions.get('theme')
// guardar el valor de una opción
await userOptions.set('theme', 'dark')
// guardar varios valores de opciones
await userOptions.set({
theme: 'dark',
compact: true
})js
const App = window.FlowluMiniApp;
const frame = await App.initializeFrame();
// obtener el valor de una opción de usuario
const theme = await frame.userOptions.get('theme');
// guardar el valor de una opción
await frame.userOptions.set('theme', 'dark');
// guardar varios valores de opciones
await frame.userOptions.set({
theme: 'dark',
compact: true
});