Leer variables
This content is not available in your language yet.
Leer una variable es leer una propiedad. No hay promesas, callbacks ni suscripciones:
const t = gVar.temperatura;El valor sale del espejo local que la plataforma mantiene al día, así que la lectura es instantánea y siempre devuelve lo último que se conoce.
Reflejar cambios en la pantalla
Sección titulada «Reflejar cambios en la pantalla»Como no hay observadores, la forma canónica de mantener la UI al día es releer cada poco. La plataforma sincroniza cada 500 ms, así que ese es el ritmo natural:
setInterval(() => { document.querySelector("#temp").textContent = gVar.temperatura ?? "—";}, 500);Leer gVar es una operación local y barata: no genera tráfico. Un intervalo de 500 ms
no le cuesta nada a la plataforma.
Para animaciones suaves (una aguja, una barra que se mueve), usa
requestAnimationFrame y lee gVar en cada fotograma:
function render() { animarAguja(gVar.temperatura); requestAnimationFrame(render);}requestAnimationFrame(render);Claves que no existen
Sección titulada «Claves que no existen»gVar.noExiste devuelve undefined. Las variables se crean en Telemetría, no desde el
artefacto: leer una clave inexistente no es un error, pero escribirla sí lanza un
TypeError.
Para saber qué variables tienes disponibles:
Object.keys(gVar); // ["temperatura", "temperaturas", "temperaturas_time", ...]Una serie se lee como el arreglo que es, y sus tiempos viven en la clave compañera:
gVar.temperaturas; // [23.4, 23.5, 23.7, ...]gVar.temperaturas_time; // [1753627800123, 1753627800623, ...]Recuerda que es una ventana de los últimos puntos: gVarSeries.temperaturas.totalLength
te dice cuántos hay en total. Para graficar no manipules estos arreglos a mano; usa
plotSerie, que ya resuelve el eje de
tiempo y el recorte.
Objetos anidados
Sección titulada «Objetos anidados»Un objeto guardado en una gVar se lee completo, pero el motor de diferencias solo detecta cambios de un nivel:
gVar.config.modo = "auto"; // se detecta y se envíagVar.config.avanzado.x = 2; // NO se detectaSi necesitas cambiar algo anidado, reasigna el objeto completo:
gVar.config = { ...gVar.config, avanzado: { ...gVar.config.avanzado, x: 2 } };