Извините, что воскрешаю эту тему, но именно сюда меня привёл Google. Я уже несколько часов пытаюсь загрузить JS-библиотеку внутрь своего плагина.
- В папке assets/javascripts моего приложения у меня есть файл с именем argdown-core.js.
- В файле plugin.rb я использую
register_asset 'javascripts/argdown-core.js'. - В файле assets/javascripts/discourse-markdown/argdown.js.es6 я делаю
import { argdown } from "argdown-core.js".
Я пробовал множество вариаций вышеперечисленного, но постоянно получаю ошибку: Uncaught Error: Could not find module argdown-core.js imported from discourse/plugins/Argdown/discourse-markdown/argdown.
Вот некоторые из вещей, которые я уже пробовал:
- Перемещение файла в различные папки
- Множество вариантов записи строки
import - Добавление расширения .es6 к имени файла — похоже, другие JS-файлы требуют этого для работы
- Добавление
:server_sideв конец строкиregister_assetв plugin.rb, так как именно там это должно выполняться - Поиск других плагинов, требующих сторонние библиотеки — не нашёл ни одного, использующего стратегии, отличные от моих
- Изучение кода Discourse, чтобы понять систему сборки
Скорее всего, это что-то простое, и я упускаю очевидную вещь. Может, кто-нибудь поможет?