window.JZ come mini-framework — il tuo pannello di strumenti dalle azioni
Una singola azione è un pulsante e del codice. Ma le azioni possono chiamarsi a vicenda — e da quel momento tieni in mano un piccolo framework. window.JZ ti lascia costruire workflow complessi e multi-step a partire da pulsanti.
Cos'è window.JZ
Nel codice di qualsiasi regola o azione è disponibile l'oggetto window.JZ — un'API per pilotare la barra delle azioni JustZix:
JZ.click('LBL')— clicca programmaticamente l'azione etichettata «LBL».JZ.action('LBL')— ottieni l'elemento DOM del pulsante.JZ.actions()— un array di tutte le azioni visibili.JZ.labels()— un array delle etichette.
La ricerca ignora maiuscole/minuscole: JZ.click('save') equivale a JZ.click('SAVE').
Pattern 1 — un'azione orchestratore
Tre azioni fanno ciascuna una cosa, una quarta le compone in una sequenza:
// Azione "AUTO" — esegue tre altre in ordine
JZ.click('LOAD');
setTimeout(() => JZ.click('PROC'), 500);
setTimeout(() => JZ.click('SAVE'), 1500);
Testi ciascuna delle tre azioni componenti per conto suo; «AUTO» le dirige soltanto. È lo stesso principio delle funzioni che chiamano funzioni.
Pattern 2 — un'azione condizionale
// Azione "SMART" — il comportamento dipende dallo stato della pagina
if (document.querySelector('.logged-in')) {
JZ.click('EXPORT');
} else {
JZ.click('LOGIN');
}
Pattern 3 — un ciclo sulle azioni
JZ.actions() e JZ.labels() ti lasciano trattare la barra come dati:
// Azione "ALL" — attiva ogni azione la cui etichetta inizia con "T"
JZ.labels()
.filter(l => l.startsWith('T'))
.forEach(l => JZ.click(l));
Perché funziona come un framework
Hai unità (le azioni), un modo di invocarle (JZ.click), introspezione (JZ.actions/labels) e composizione (un'azione che chiama azioni). Basta questo per costruire uno strumento multi-step da una barra di pulsanti — senza alcuna libreria esterna.
Trappole
- Timing.
JZ.clickè immediato, ma l'effetto di un'azione (es. un fetch) no. Per questo l'orchestratore usasetTimeout; meglio ancora, fai che le azioni segnalino il completamento tramite una variabile condivisa. - Le etichette sono un contratto. Un'azione orchestratore ne chiama altre per etichetta — rinominare l'etichetta «LOAD» scollega «AUTO». Tratta le etichette come nomi di funzione.
Vedi anche
- window.JZ helpers — l'API completa delle azioni
- L'azione PULSANTE — l'unità che orchestri
- Tre azioni che meritano un posto — azioni pronte da comporre
Installa JustZix — e costruisci dai pulsanti qualcosa di più grande di un pulsante.
Valuta questo articolo
Nessuna valutazione — sii il primo.