Проверьте раздел <head>
на вашей странице.Вы проверяете это, просматривая источник страницы при запуске приложения.Если вы сделаете это, я бы поспорил, что вы увидите один или несколько файлов .js, которые включены дважды.Убедитесь, что у вас нет ненужных javascript_include_tags где-то в ваших представлениях.
Если вы не изменили стандартные требования require в app/assets/javascripts/application.js
, все файлы javascript, которые там находятся, автоматически включаются, пока ваш макет установленвключить их (что по умолчанию).
В частности, если у вас есть эта строка в вашем application.js:
//= require_tree .
или
//= require_directory .
Этоприведет к тому, что все файлы .js в каталоге app / assets / javascripts (и подкаталогах, если у вас есть require_tree) будут включены, если у вас на странице есть следующее:
<%= javascript_include_tag 'application' %>
Обычно это имеет местокак это будет в вашем макете по умолчанию (в app/views/layouts/application.html.erb
).
Так что, если они уже включены в ваш макет, вы хотите убедиться, что вы не включите их снова каким-либо другим способом.
Еще одна вещь, которую вы можете попробовать, это удалить включение из вашего макета, а затем просто включить файлы javascript вручную для каждого просмотра, используя javascript_include_tag
.