Scusa per il necroing di questo thread, ma è qui che Google mi ha portato. Sto cercando da un paio d’ore di far caricare una libreria JS all’interno del mio plugin.
- Nella cartella assets/javascripts della mia app, ho un file chiamato argdown-core.js.
- Nel mio file plugin.rb, sto eseguendo
register_asset 'javascripts/argdown-core.js'. - In assets/javascripts/discourse-markdown/argdown.js.es6, sto eseguendo
import { argdown } from "argdown-core.js".
Ho provato molte varianti delle istruzioni sopra e continuo a ottenere Uncaught Error: Could not find module argdown-core.js imported from discourse/plugins/Argdown/discourse-markdown/argdown.
Alcune delle cose che ho provato:
- Spostare il file in varie cartelle
- Molte permutazioni sulla riga
import - Aggiungere .es6 all’estensione del file - sembra che altri file JS abbiano bisogno di questo per funzionare
- Aggiungere
:server_sidealla fine della mia rigaregister_assetin plugin.rb, dato che è lì che dovrebbe essere eseguito - Cercare altri plugin che richiedono librerie di terze parti - non riesco a trovarne nessuno che utilizzi strategie diverse dalle mie
- Scavare nel codice di Discourse per cercare di capire il sistema di bundling
Probabilmente è una cosa semplice e mi sto perdendo qualcosa di ovvio. Qualcuno può aiutarmi?