#node.js #ruby #heroku
Вопрос:
Я пытаюсь развернуть свое приложение на heroku, и, хотя оно отлично работает на моем локальном (говорит все <Root/>
, что у меня есть), на странице Heroku говорится, что мой текст-заполнитель «реакция нарушена» root.html.erb
.
когда я впервые создал приложение heroku, я забыл heroku/nodejs, и тогда не было проблемы «Предварительная компиляция ресурсов не удалась». но Heroku все еще не отображал правильный текст. Затем я добавил heroku/nodejs (и убедился, что это до heroku/ruby), и теперь я получаю «Ошибка предварительной компиляции ресурсов». проблема.
В консоли нет ошибок, я прочитал, что это означало, что, вероятно, я не смог распаковать свой интерфейс. Я попытался вручную выполнить предварительную компиляцию своих ресурсов , запустив bundle exec rake assets:precompile RAILS_ENV=production
, но я просто получаю очень длинный блок красных ошибок в своем терминале.
В конце длинного блока ошибок это то, что показывает терминал:
12673 //# sourceMappingURL=bundle.js.map
12674 ;
12675 (function() {
12676 var context = this;
12677
12678 (function() {
12679 (function() {
12680 var slice = [].slice;
==
/Users/.rbenv/versions/2.5.1/bin/bundle:23:in `load'
/Users/.rbenv/versions/2.5.1/bin/bundle:23:in `<main>'
Tasks: TOP => assets:precompile
(See full trace by running task with --trace)
У меня есть bundle.js.map
в моем .gitignore
, если это поможет.
Заранее спасибо, пытался следить за другими сообщениями, в которых были проблемы с «предварительной компиляцией ресурсов». проблемы, но, похоже, они пока не работают для меня.
Ответ №1:
хотя я не мог прочитать весь журнал ошибок через свой терминал (потому что он был слишком длинным), я смог прочитать его через heroku в разделе «Активность». Я понял, что у меня проблема с моим уродцем, так что вот решение:
в config/environments/production.rb
, измените config.assets.js_compressor = :uglifier
на config.assets.js_compressor = Uglifier.new(harmony: true)