Signal Básico
En esta página
Un signal es una celda de estado reactiva. Créalo pasando el valor inicial a
signal(). A partir de ahí, .get() lee el valor actual y .set(v) lo reemplaza.
Los signals aceptan cualquier tipo: enteros, strings, mapas, arrays, structs.
Creación, lectura y escritura de signals con valores distintos.
01-signal-basics.zolo
// Feature: signals — fine-grained reactive state
// Syntax: `signal(initial)` creates a cell; `s.get()` reads,
// `s.set(v)` writes. Reads inside `effect` / `computed`
// register a dependency.
// When to use: UI state, derived values, cache invalidation —
// anywhere "X depends on Y" should re-run when Y changes.
use std::reactive::Signal
let s = signal(42)
print(s.get())
// expected: 42
s.set(100)
print(s.get())
// expected: 100
// Signals carry any value: ints, strings, maps, arrays, structs.
let name = signal("zolo")
name.set("lang")
print(name.get())
// expected: lang
Desafío
Crea un signal de tipo lista, añade elementos con .modify(|v| { ... }) e
imprime el tamaño después de cada modificación.
Consulta también