1

私のrequirejs構成ファイルは私には正しいようです。しかし、関数に入ってアプリケーションを起動すると、jQuery にしかアクセスできません。誰かが私の設定ファイルを見て、私が間違っていることを教えてもらえますか? Backbone または Underscore が表示されないのはなぜですか? jQuery が表示されるのはなぜですか? ここに私の設定ファイルがあります:

require.config({
  paths: {
    jquery: "libs/jquery/jquery",
    underscore: 'libs/underscore/underscore',
    backbone: "libs/backbone/backbone"
  },
  shims: {
    backbone: {
      deps: [
        'underscore',
        'jquery'
      ],
      exports: 'Backbone'
    },
    underscore: {
      exports: '_'
    }
  }
});

require(['jquery', 'underscore', 'backbone'], function($, _, Backbone) {
  'use strict';

  debugger;
});

助けてくれてありがとう。

4

2 に答える 2

0

使用しているアンダースコアとバックボーンのバージョンは AMD に準拠していないため、require.js が必要とする方法で返されません。関数パラメーターからそれらを除外するだけで、グローバル スコープで使用できるようになります。それ以外の場合は、undefined を _ および Backbone の値として関数に渡しています。

require(['jquery', 'underscore', 'backbone'], function() {
  console.log($);
  console.log(_);
  console.log(Backbone);
});
于 2013-11-05T20:49:42.603 に答える