requirejsそしてrequire同じですか?
RequireJS 2.1.15の時点でrequire、requirejsグローバルスペースでは、コンソールで実行できるこのテストから明らかなように、実際には「まったく同じ」です。
> require === requirejs
true
テストが返すtrueことは、それらがまったく同じ関数オブジェクトであることを示しています。これらは、たまたま類似または同一のコードを持つ2つの関数ではありません。それらは同じオブジェクト、期間です。
ただし、実行する場合define(['require'], function (require) {、require関数に渡されるものは通常、グローバルとは異なるrequireことに注意してください。
使用する必要がありますrequireかrequirejs?
場合によります。RequireJSはAMDローダーですが、町で唯一のローダーではありません。AMD仕様に100%準拠するコードを記述して、コードを使用するユーザーがコードを変更せずに必要なローダーを使用できるようにする場合は、RequireJSに固有requireであるため、グローバルレベルで使用する必要があります。requirejs別のAMDローダーはそれを定義しません。AMD仕様では定義されていますが、定義されてrequireいませんrequirejs。
グローバルを定義する他のものをロードする場合は、競合を回避するためにグローバルレベルでrequire使用する必要があります。requirejs
モジュール内では、常にを使用defineしてへの参照を取得しますrequire。グローバル空間で競合があるかどうかに関係なく、これを行う必要があります。