Require.js JST文件

时间:2013-05-17 05:05:21

标签: backbone.js requirejs marionette

这是我的示例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

为什么哦为什么!

谢谢!

1 个答案:

答案 0 :(得分:0)

您的代码存在的问题是您正在使用&#34;模板&#34;中获取该功能的文本。变量。您仍然需要eval该文本在窗口上创建一个实际的JST实例。

问题整体上是你在滥用文字!插件,你真正需要做的是使用requireJs的模块而不是挂在窗口上的变量。