2014-01-25 55 views
0

我有一個簡單的PagesController與'主頁'方法。 我只是想方法來響應我的homepage.js.erb模板文件,其中包含一個簡單的console.log("Hello World!"); 所以我寫respond_to do |format| format.js format.html end 在我的主頁方法,但它什麼都不做。 (在我的Chrome控制檯中沒有hello world)。 如果我刪除format.html導軌扔我這個錯誤"ActionController::UnknownFormat"Rails 4 respond_to javascript

這是turbolinks的問題嗎?我能怎麼做?

感謝JD

回答

0

Turbolinks發出請求作爲HTML,所以JS文件不會得到渲染,但HTML之一,在客戶端turbolinks剛剛替換機身採用新的內容和更新網址。

如果你想呈現你的js.erb文件,那麼你需要發起js請求不html。只需在link_to中寫入遠程真。

= link_to 'XYZ', url, :remote => true 

或者,如果你想在瀏覽器的HTML請求執行的js代碼,那麼你需要寫你內心的HTML文件,JavaScript代碼(format.html)

例子:

javascript: 
    console.log("Hello World!");