2016-04-28 83 views
0

我正在關注DHH關於Rails 5和動作電纜的教程,並且我已經完成了他所做的一切。 我在Chrome的控制檯,文件app /資產/ Java腳本/ cable.coffee指向一個錯誤:無法在咖啡腳本中訪問ActionCode

#= require cable 
#= require_tree ./channels 

@App ||= {} 
App.cable = ActionCable.createConsumer() 

我得到ActionCable is undefined 我試圖要求action_cable代替電纜,並且移動的文件,但沒有似乎改變了這一點。這可能是值得注意的是,我開始與軌道4的應用程序,然後改變了軌道寶石

gem 'rails', '5.0.0.beta3' 

,並補充說:

gem 'actioncable', '~> 5.0.0.beta3' 

回答

0

我相信你需要以下按照該文檔here

# app/assets/javascripts/cable.coffee 
#= require action_cable 

@App = {} 
App.cable = ActionCable.createConsumer("ws://cable.example.com") 

此外,它看起來像推薦的地方,把你的頻道文件是現在app/assets/javascripts/cable/subscriptions/

如果這不起作用,那麼創建一個新的Rails 5應用程序並比較初始值設定項和application.coffee以確保所有內容都一致可能不是一個壞主意。

+0

感謝您的回答。我做到了,現在我得到「無法找到類型爲'application/javascript'的文件'action_cable'」。我沒有重啓我的服務器。我還創建了一個新的rails 5應用程序進行比較,但找不到解決方案 –

+1

嘗試從Gemfile中刪除'gem'actioncable','〜> 5.0.0.beta3''然後'bundle install'。這是沒有必要的,因爲它與Rails捆綁在一起。您可能想要嘗試運行'rails app:update',這會讓您選擇覆蓋或區分新的初始化程序/配置文件與當前的初始化程序/配置文件,以確保一切正確配置。另外,請確保您的application.js沒有任何對名爲'action_cable'的文件的引用。 – mwalsher