我剛剛設置了一個骨架Rails 4應用程序,並已添加了一些基本腳手架的backbone-on-rails
gem。未捕獲的ReferenceError:JST未在骨架中使用Jade模板定義
在試圖讓一切成立的過程中,我一直運行到以下錯誤:
Uncaught ReferenceError: JST is not defined
(anonymous function)
試圖調用從骨幹視圖模板index.jst.jade時。
爲了確保腳手架連接在一起,我添加了一條警報,但我無法通過此錯誤來正確呈現視圖。
我已經包含了玉石寶石,確保模板路徑在js視圖中是正確的,並相應地更新了清單文件。
我必須在某處定義JST嗎?我在這裏做錯了什麼?
感謝
Gem版本:
- 玉(0.1.1)
- 骨幹-上軌(1.1.1.0)
- 下劃線導軌(1.7.0)
- Rails 4.1.6 Ruby 2.1.0
Router:
Task.Routers.Tasks = Backbone.Router.extend({
routes: {
'': 'index',
},
index: function() {
alert('index router hit');
},
});
查看:
Task.Views.TasksIndex = Backbone.View.extend({
template: JST['tasks/index']
});
的application.js:
//= require jquery
//= require lodash
//= require jquery_ujs
//= require backbone
//= require jade/runtime
//= require task
//= require_tree ../templates
//= require_tree ./models
//= require_tree ./collections
//= require_tree ./views
//= require_tree ./routers
//= require_tree .
應用程序結構樹:
|____javascripts
| |____application.js
| |____collections
| | |____tasks.js
| |____models
| | |____task.js
| |____routers
| | |____tasks_router.js
| |____task.js
| |____views
| | |____tasks
| | | |____tasks_index.js
|____templates
| |____tasks
| | |____index.jst.jade
我也不會在使用.eco模板時出現此錯誤。是什麼讓玉在這裏獨一無二? – mrh 2014-12-11 04:16:27
你見過這篇文章嗎? 重複:http://stackoverflow.com/questions/8396051/jst-undefined-for-rails-3-1-application – 2014-12-11 04:32:45
我做過了,我的application.js文件包含'// = require_tree ../在所有其他骨幹目錄之前的模板「 – mrh 2014-12-11 04:40:41