TL;DR は質問の一番下にあります。私のがらくたをすべて読みたくない人のために。
私の現在の JavaScript モジュール化の方法は、単純に「csc」(私の会社の頭字語) のようなグローバル アンカーを作成し、その上にモジュールを追加することです。
したがって、次のようなグローバル構造になります。
csc.
Utils
Map
.Geolocation
Storage.
Cookie
DB
これらの各ファイルは、次のディレクトリ構造に格納されます。
csc.js
csc.Utils.js
csc.Map.js
csc.Storage.js
これにより、コードベース全体を常にロードする必要がなくなります。
RequireJS の使用に移行しようとしていますが、そのライブラリで採用されている方法論は少し異なるようです。
名前空間構造を維持するために、すべてのモジュールの周囲にモジュールを定義できますが、それでもそれらをグローバルな「csc」参照に追加します。ただし、これは Require のコア原則に反しているようです。
ただし、それらをグローバルに維持しないと、次のように個別の変数がたくさんあるため、「csc.Map.Geolocation」などの適切な名前空間が失われます。
require(['csc', 'csc.Utils', 'csc.Map'], function (csc, utils, map) {
});
上記の恐ろしい説明が十分でない場合に備えて、質問を本質にまで落とします。
おそらくモジュール定義内で、これら3つの変数をこの質問の上部で定義された構造に戻す方法はありますか? それとも、私はこれをすべて間違っているのでしょうか? 代わりに、Require のやり方に従うべきでしょうか? 私は Require の方法論に従いたいと思っていますが、すべてのモジュールを連鎖可能にして名前空間化できる機能も気に入っています。