Situazione
Vogliamo aggiungere questa libreria esterna logging JS alla nostra istanza di Discourse per migliorare il flusso di lavoro di debug, utilizzando questo leggero wrapper di logging che ci permette, ad esempio, di impostare un livello di log tramite log.setLevel('debug').
Questa libreria esterna dovrebbe essere disponibile in tutti i nostri plugin personalizzati, nei temi e nei componenti dei temi installati sulla nostra applicazione.
Implementazione
• Importare il JS tramite register_asset in vari plugin importerebbe il file JS più volte?
• Esiste un’alternativa di libreria JS con funzionalità simili dopo che Ember ha deprecato il suo utility di logging a favore di console.log?
Attualmente abbiamo seguito questa strada per implementarlo:
- Installare un plugin che importa il JS esterno e rende la libreria JS disponibile tramite l’oggetto window (
window.log = log)
• Importare la libreria JS solo una volta
• Altri plugin/temi/componenti di tema dipenderebbero da quel plugin, e cose come i plugin open source costringerebbero gli utenti a installare entrambi i plugin
Ha senso questo approccio o suggeriresti un metodo diverso?