Lista de operaciones estatales
El proveedor de estado dispone de operaciones de lista para almacenar el estado.
Empujar elementos al inicio de la lista
Utilizando un nombre de lista, puede añadir un elemento a una lista al principio.
Firma del método
listPrepend<T>(list: string, value: T)
Empujar elementos al principio de la lista
await state.listPrepend("list", "bar");
await state.listPrepend('list', 'bar')
Empujar elementos al final de la lista
Utilizando un nombre de lista, puede añadir un elemento a una lista al final.
Firma del método
listAppend<T>(list: string, value: T)
Empujar elementos al final de la lista
await state.listAppend("list", "foo");
await state.listAppend('list', 'foo')
Insertar un elemento en posición relativa
Puede añadir un elemento a una lista antes o después de un elemento existente. La dirección before booleano se utiliza para decidir colocar el elemento antes de (true) o después (false) el pivot (el elemento existente).
Firma del método
listInsert<T>(list: string, before: boolean, pivot: T, value: T)
Inserción relativa de un elemento
await state.listInsert('list', false, 'foo', 'bar');
await state.listInsert('list', false, 'foo', 'bar')
Sobrescribir el valor de un elemento en un índice específico
Puede sobrescribir el valor de un elemento en un índice específico. Es necesario que ya exista un valor en el índice position especificado.
Firma del método
listSet<T>(list: string, position: number, value: T)
Sobrescribir el valor de un elemento en un índice específico
await state.listSet('list', 0, 'foo');
await state.listSet('list', 0, 'foo')
Obtener un elemento en un índice específico
Puede obtener un elemento en un índice específico.
Firma del método
listIndex<T>(list: string, position: number)
Obtener un elemento en un índice específico
const element = await state.listIndex('list', 0);
element = await state.listIndex('list', 0)
Obtener la longitud de una lista
Utilizando un nombre de lista, puede obtener la longitud de la lista.
Firma del método
listLength(list: string)
Obtener la longitud de una lista
const listLength = await state.listLength("list");
listLength = await state.state.listLength('list')
Obtener los elementos de una lista con un rango
Utilizando un nombre de lista y un rango, puede obtener los elementos del rango especificado.
Firma del método
listRange<T>(list: string, startPos: number, endPos: number)
Obtener los elementos de una lista con un rango
const elements = await state.listRange("list", 0, 2);
elements = await state.listRange('list', 0, 2)
Eliminar elementos de la lista
Puede eliminar elementos de una lista especificando un valor. Opcionalmente, puede proporcionar un recuento para controlar cuántos elementos se eliminan si hay duplicados.
Firma del método
listRemove<T>(list: string, value: T, count?: number)
Eliminar elementos de la lista
await state.listRemove('list', 'foo');
await state.listRemove('list', 'foo')
Elementos emergentes al inicio de la lista
Puede extraer elementos del principio de una lista y hacer que se los devuelvan. Opcionalmente puede pasar un count para hacer saltar más de un elemento a la vez.
Firma del método
listStartPop<T>(list: string, count?: number)
Elementos emergentes al principio de la lista
await state.listStartPop("list");
await state.listStartPop('list')
Elementos pop al final de la lista
Puede sacar elementos del final de una lista y hacer que se los devuelvan.
Firma del método
listEndPop<T>(list: string, count?: number)
Elementos emergentes al final de la lista
await state.listEndPop("list");
await state.listEndPop('list', 'bar')
Recortar una lista
Puede eliminar elementos de una lista especificando un intervalo. Los elementos eliminados no se le devolverá.
Firma del método
listTrim<T>(list: string, startPos: number, endPos: number)
Recortar una lista
await state.listTrim("list", 0, 1);
await state.listTrim('list', 0, 1)