1

既存のアプリを CommonJS モジュールの使用に移行し、Browserify を使用bundleしてモジュールを 1 つのファイルにまとめることを考えています。

私はモジュールを書くことに頭を悩ませていますが、飛び込んで特定のビットを書き直し始める前に少し懐疑的であることの1つは、バックボーン、アンダースコア、 jQuery および各ファイル内のヘルパー ファイル。

var Backbone = require('/backbone');
var $ = require('/jquery');
var _ = require('/underscore');

各ファイルの先頭は、しばらくすると少し面倒になります。

完全な CommonJS、Browserify n00b であるため、どこかに非常に明白な何かが欠けているのではないかと思っています。

4

1 に答える 1

2

あなたが見逃している「非常に明白なこと」は、Node.js と Browserify 環境でまったく同じようにグローバルを作成できることです。を使用して明示的に行うか、 (前に付けずに)global.Backbone = require('/backbone')行うだけであまり明示的ではありません。Backbone = require('/backbone')var

ブラウザでは、globalオブジェクトは実際にはwindowオブジェクトであることに注意してください。ただし、windowオブジェクトにアタッチすると、Node.js との互換性が失われます。これは、通常、グローバル変数がwindow定義されていないためです。

于 2013-07-22T09:21:37.490 に答える