3

私は現在、フロントエンドが多くの面倒な作業を行っているアプリを構築しています。すべてをきちんと整理するために、 requirejsを使用したいと思います。ただし、require.js を最大限に使用するには、使用するすべてのモジュールが AMD に準拠している必要があります。

つまり、私が使用するモジュールが更新されるたびに、AMD 準拠のバージョンが表示されるのを待つか、自分で作成する必要があります (これは現在方法がわかりません)。

これは本当のターンオフです。

このhttps://github.com/jrburke/backbone/blob/optamd/backbone.jsを見ると、バックボーン AMD 準拠のようなモジュールを作成することは、プラグインを汎用関数にラップするほど簡単ではないように思えます。

モジュールを AMD 準拠にするための多かれ少なかれ簡単な方法はありますか?

4

1 に答える 1

2

彼のバージョンはかなり防弾なので、さまざまな状況で動作します。実行している環境と、利用可能なもの/利用できないものを知っているので、より簡単なことを実行できるいくつかの仮定を立てることができます。

jQuery、アンダースコア、および定義がグローバル スコープにあり、commonjs のサポートは必要ないと仮定して、bacbkonejs を AMD モジュールにするこの要点を確認してください: https://gist.github.com/2762813

追加するだけです

define(function() {
  var obj = {};
  obj._ = window._;
  obj.jQuery = window.jQuery;

上へと

.call(obj);
   return obj.Backbone;
});

底に。


UseJS に注目してくれた @SimonSmith に感謝します。UseJS は、AMD 形式以外のモジュールを変更せずにロードできるようにする AMD ローダー プラグインです。私はまだ use を使用していませんが、有望に見えます: https://github.com/tbranyen/use.js/

アップデート

RequireJS 2.0 は、shim 構成を介して探している機能を直接サポートするようになりました: https://github.com/jrburke/requirejs/wiki/Upgrading-to-RequireJS-2.0#wiki-shim

于 2012-05-21T15:13:08.353 に答える