这是我的示例JST文件
(function() {
var _ref;
if ((_ref = window.JST) == null) {
window.JST = {};
}
window.JST['test'] = function(context) {
return (function() {
var $o;
$o = [];
$o.push("<h1>yayyyyyyaa</h1>");
return $o.join("\n");
}).call(context);
};
}).call(this);
我在骨干应用中使用require.js,比如
define ['backbone', 'marionette', 'text!javascripts/backbone/templates/test.jst'],
(Backbone, Marionette, template) ->
class Test extends Backbone.Marionette.ItemView
template: JST[template]
当我加载应用程序时,我得到:
ReferenceError: JST is not defined
为什么哦为什么!
谢谢!
答案 0 :(得分:0)
您的代码存在的问题是您正在使用&#34;模板&#34;中获取该功能的文本。变量。您仍然需要eval
该文本在窗口上创建一个实际的JST实例。
问题整体上是你在滥用文字!插件,你真正需要做的是使用requireJs的模块而不是挂在窗口上的变量。