4
paths: {
          jquery: 'libs/jquery/jquery-min',
          underscore: 'libs/underscore/underscore-min',
          backbone: 'libs/backbone/backbone-optamd3-min',
          handlebars: 'libs/handlebars/handlebars',
          text: 'libs/require/text'
      }

   define([
      'jquery',
       'underscore',
       'backbone',
       'collections/todos',
       'views/todos',
       'text!templates/stats.html',
       'common',
       'handlebars'
  ], function ($, _, Backbone, Todos, TodoView, statsTemplate, Common, handlebars) {
   //handlebars is null
   console.log("handlebars is",handlebars);

}))

ハンドルバーを除いて、他のものは正常にロードできます。ハンドルバーを正常にロードする理由と方法.thanks

4

1 に答える 1

30

まず、あなたが新しいことはわかりましたが、他の人があなたを助けられるように、あなたの質問に詳細を追加してみてください.

ソースをちらりと見ると、Handlebars は AMD と互換性があるとは思えないため、自分でシムする必要があります。このようなもの:

requirejs.config({
    shim: {
        'handlebars': {
            exports: 'Handlebars'
        }
    }
});
于 2012-08-10T00:07:31.743 に答える