Как избежать обслуживания предварительно скомпилированных ресурсов в режиме разработки?

Я предпочитаю , а не для объединения JavaScript файлы в режиме разработки, но обслуживают их как отдельные файлы. Итак, я настроил:

development.rb:

config.assets.compress = false
config.assets.debug = true
config.assets.compile = true

В моем каталоге / app / assets / javascript у меня есть:

  • reviews.js
  • reviews /
    • foo.js
    • bar.js

reviews.js:

//= require jquery
//= require jquery_ujs
//= require_tree ./reviews

Я включаю JavaScript, используя <% = javascript_include_tag "reviews"%> в моем макете. Сгенерированная страница правильно ссылается на три скрипта по отдельности, а reviews.js по существу пуст. Все идет нормально.

Теперь, когда я предварительно компилирую свои ресурсы для производства с использованием rake assets: precompile , три файла JavaScript объединяются в reviews.js . Это все нормально для производства, но теперь, в режиме разработки , объединенный reviews.js обслуживается в дополнение к двум отдельным файлам.

Конечно, это приводит ко всевозможным неприятным ошибкам при разработке, потому что теперь содержимое foo.js и bar.js обслуживается дважды, одна из них - в потенциально более старая версия в reviews.js .

Как я могу убедиться, что Rails не использует предварительно скомпилированные ресурсы в режиме разработки?

53
задан gariepy 8 March 2016 в 13:43
поделиться