我刚刚设置了一个骨架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