我已經在資產文件夾中爲每個模型提供了不同的咖啡文件文件。但是,每次訪問頁面時都會執行它們,即使它來自不同的控制器。如果我繼續/插入/新的,我希望只執行insertion.coffee,而不是所有的.coffee啓動。我怎樣才能一次啓動一個?爲什麼所有咖啡腳本文件總是一次全部執行Rails
這是我insertions.coffee
$(document).on "turbolinks:load", ->
if ($('#insertion_book_search'))
console.log("found")
console.log($('#insertion_book_search').length)
console.log($('#insertion_book_title').length)
$('#insertion_books_subject').parent().hide()
這是我static_pages.coffee
$(document).on "turbolinks:load", ->
console.log("Mie cose")
$('.last_img').on 'load', ->
natHeight = $(this).get(0).naturalHeight
natWidth = $(this).get(0).naturalWidth
if (natWidth > natHeight)
$(this).css('width','100%')
else
$(this).css('height','100%')
我想什麼才達到的是,當我使用插入控制器,它僅加載insertion.coffee,當我使用靜態頁面控制器時,它只加載static_pages.coffee。 據我所知,當我將// require_tree .
行添加到/app/assets/javascript/application.js
時,我的所有視圖中都裝載了所有的咖啡。
如果我刪除了需要的樹,我嘗試用<%= javascript_include_tag ..%>添加它們。我需要有.js文件而不是咖啡。有可能加載咖啡文件?
發佈您的coffeescript資產的兩個單獨示例。我敢打賭,你將他們綁定到同一個事件,這就是爲什麼他們都跑。請記住,您可以將coffeescript/js放在不同的文件中,但它們都被編譯爲一個單獨的文件。不同的文件名將幫助您組織腳本 - 它們不是名稱空間。 – MarsAtomic