Скомпилируйте производственные активы из clojurescript с помощью figwheel - PullRequest
1 голос
/ 25 июня 2019

В настоящее время мы используем cljsbuild для компиляции нашего источника clojurescript в ресурсы, используемые в производстве, но во время разработки мы используем lein-figwheel.И cljsbuild, и figwheel постоянно следят за изменениями исходного кода и при необходимости перекомпилируют.

Мне было интересно, возможно ли использовать только один инструмент для обоих, предпочтительно в одном и том же процессе.

У нас все в порядке с инструментами переключения, особенно с Figwheel Main.Каждое изменение файла должно просто компилироваться:

  • a js с расширенными оптимизациями для использования в производстве
  • в режиме реального времени перезагрузите код в браузере, как это делают figwheel & figwheel main

Я нашел этот в документации на figwheel, но он требует ручной работы, такой как очистка целей и запуск сборки по требованию со специальными параметрами.

1 Ответ

0 голосов
/ 26 июня 2019

Я недавно переключился с lein-figwheel на figwheel-main (используя Clojure Deps вместо lein).Figwheel-Main намного проще, проще и лучше (в основном это «Figwheel 2.0»).

Figwheel-Main может использоваться как для автоматической перезагрузки во время разработки, так и для компиляции одного my-app.js выходного файладля развертывания или тестирования.Вы можете использовать либо :whitespace, либо :advanced уровень оптимизации компилятора, чтобы получить один статический *.js выходной файл.Я использую :whitespace для генерации выходного файла для целей автономного тестирования (в Docker с chrome --headless) или :advanced для окончательной производственной сборки.

В качестве дополнительного преимущества Clojure Deps лучше, чем lein для управления конфликтующими версиями зависимостей.

...