儘管問題的標題與以前的問題非常相似,但我的問題似乎有所不同。JavaScript在Rails 3.1基於資產的應用程序中包含兩次
簡而言之,第一項在js清單中包含兩次。
這是我的/app/assets/javascript/application.js
文件在Rails 3.1的應用程序的整體:
//= require jquery
//= require jquery-ui
//= require jquery_ujs
//= require autocomplete-rails
//= require utilities
而這裏的渲染頁面的源代碼片段:
<script src="/assets/jquery.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery-ui.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script>
<script src="/assets/autocomplete-rails.js?body=1" type="text/javascript"></script>
<script src="/assets/utilities.js?body=1" type="text/javascript"></script>
<script src="/assets/application.js?body=1" type="text/javascript"></script>
請注意,如果我移動到在application.js
之類的任何其他行上面如下所示:
//= require utilities
//= require jquery
//= require jquery-ui
//= require jquery_ujs
//= require autocomplete-rails
它始終是包含兩次的第一個項目!
<script src="/assets/utilities.js?body=1" type="text/javascript"></script>
<script src="/assets/utilities.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery-ui.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script>
<script src="/assets/autocomplete-rails.js?body=1" type="text/javascript"></script>
<script src="/assets/application.js?body=1" type="text/javascript"></script>
UPDATE
作爲暫時的解決辦法,我在列表的頂部,它指向一個空dummy.js文件添加//= require dummy
。雖然它在呈現的頁面中出現兩次,但它沒有任何效果,因爲它什麼都不做。在另一方面,如果我在development.rb
設置config.assets.debug = false
,經常建議,那麼我所有的JavaScript代碼被加載兩次:(刪除模型時如確認對話框彈出兩次)
<script src="/assets/application.js" type="text/javascript"></script>
<script src="/assets/application.js" type="text/javascript"></script>
和JS行動觸發了兩次
朱塞佩
你有任何機會在公共/資產文件?如果你刪除它們,因爲這可能會導致此重複 – Hishalv 2011-12-19 20:13:12
不,我的開發中沒有資產目錄/ public – Giuseppe 2011-12-20 07:39:35
您是否嘗試將config/environments/development.rb config.assets.debug更改爲false,想知道它是否執行了'正確的事情「,當它連接所有的資產 – house9 2011-12-21 05:39:20