Su Instant Developer Cloud nell’editor del codice ci sono alcune cose interessanti che possono aiutare nell’uso quotidiano per gestire meglio il codice e quello che è il debug.
Tipizzazione di elementi che l’IDE non riconosce.
Se nell’evento di load di una videata ricevo un parametro di nome prod con dentro un documento Prodotto l’editor del codice non può sapere cosa contiene options.prod e quindi non è in grado di farmi vedere le proprietà e i metodi di Prodotto.
Posso ovviare a questa cosa indicando io il tipo con la direttiva //type: nella riga di codice dove assegno options.prod ad una variabile.
let p = options.prod;//type:BELib.Prodotto
Quindi ora scrivendo p. otterremo nella combo di scelta dei suoi elementi da usare anche proprietà e metodi propri del documento Prodotto.
Funzione t()
La funzione t() viene utilizzata per comporre una stringa di testo dato un template e un oggetto che ne specifica i dati.
Nel template i parametri sono indicati da @ seguita dal nome della proprietà dell’oggetto passato come dati.
Per esempio:
let numero = 114782;
let totale = 1500;
let messaggio = t("Il totale dell'ordine numero @num è di @tot euro", {num : numero, tot : totale})
Questo approccio consente di scrivere codice più leggibile che utilizzando la concatenazione di stringhe.
Nel caso di stringhe che poi devono essere localizzate con le traduzioni si fornisce il massimo contesto possibile per una traduzione più accurta.
Messaggi nella console di debug
Nel debug di Instant Developer Cloud è possibile far stampare al sistema dei messaggi utilizzando le funzioni:
- console.log() - scrive un messaggio di log (grigio)
- console.warn() - scrive un messaggio di warning (giallo)
- console.error() - scrive un messaggio di errore (rosso)
console.log("Sono un log");
console.warn("Sono un warning");
console.error("Sono un error");
Questo ci può aiutare a cercare i nostri messaggi nel debug di trace.
Un consiglio se lavorate in gruppo potrebbe essere quello di marcare i propri console.log() con la propria sigla:
console.log("PG - sono un log");
I messaggi di Paolo Giannelli iniziano sempre con "PG - " così sono facilmente individuabili.
Così nel caso io debba eliminare dal codice solo i miei messaggi lo posso cercare facilmente senza togliere quelli dei mie colleghi.
Se devo visualizzare una costante e il valore di una o più variabile è meglio che le passi come parametri separati da virgole e non mediante la concatenazione in modo che gli oggetti non vengano convertiti in stringhe e siano poco leggibili nel debug.
Il codice:
console.log("PG - datamap Supplier 1: ", $mainSuppliersDM);
console.log("PG - datamap Supplier 2: " + $mainSuppliersDM);
Il risultato:
Il primo ha tutti i dati della datamap e dove ci sono le frecce verso il basso è possibile cliccare ed espandere l’array di oggetti a più livelli.

