[英]Rails4 loading javascript files. (Asset Pipeline)
我正在努力讓我的JavaScript文件之一與Rails4應用程序一起工作。 該文件是users.js.coffee。 這是我想為所有頁面加載的所有javascript文件(不一定只是針對用戶控制器)
如果嘗試通過localhost:3000 / assets / users.js加載,則可以看到已編譯的JS文件。 但是在chrome上使用cmd + o不會加載文件,並且事件也不會觸發,所以我知道它不起作用(並正在加載)
還嘗試運行bundle exec rake assets:clean assets:precompile
我在控制台中看不到任何500或400或js錯誤。 最簡單的users.js.coffee也不起作用
$(document).ready ->
alert('hello')
一些配置:
applcations.js
//= require jquery
//= require jquery_ujs
//= require js-routes
//= require bootstrap-slider
//= require users
//= require_tree .
development.rb config.assets.initialize_on_precompile =假config.serve_static_assets =假
production.rb
# Disable Rails's static asset server (Apache or nginx will already do this)
config.serve_static_assets = true
# Compress JavaScripts and CSS
config.assets.compress = true
config.assets.compile = false
# Generate digests for assets URLs
config.assets.digest = true
config.assets.debug=true
另外,在我開始使用bootstrap-sass等獲取引導程序之前,users.js.coffee運行良好(最終,最終導致從application.haml中的托管CDN加載引導程序,不確定是否會干擾js的方式)文件已加載/正常運行)
非常感謝調試此問題的任何指針。 已經花了幾個小時,Asset Pipeline每次都能吸引我
謝謝PS:我正在部署到heroku(但是在dev和heroku中都失敗了,所以希望在dev中修復就足夠了)
通過將//= require users
移動到應用程序的javascript所依賴的所有其他庫之后,但在require_tree .
之前,來更新application.js
內容require_tree .
:
//= require jquery
//= require jquery_ujs
//= require js-routes
//= require bootstrap-slider
//= require users
//= require_tree .
此處需要javascript的順序很重要。 如果您的文件是users.js.coffee
那么您需要使用jQuery
coffeescript
因此必須在users
之前users
jQuery
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.