私はrequireJSについてほとんど読んでおらず、理解しようとしています。
私が知りたいこと:
- Module-Pattern のような特定の方法またはパターンでファイルを構成する必要がありますか??
- ライブラリを使用する場合、これらのファイルは AMD をサポートする必要がありますか?
助けてくれてありがとう。
適切と思われる方法でファイルを構成できます。RequireJSは、require.js をロードするscript タグの属性で参照されるスクリプト ファイルをロードします。data-main
そのファイルから、必要なモジュールを自由に要求できます。
ライブラリはAMD をサポートする必要はありません。shim 構成を使用して、値をグローバル スコープ (つまり、通常の JavaScript ファイル) にエクスポートするモジュールをロードできます。
ほとんどの場合、次のような構造のrequire.jsプロジェクトをセットアップしています。
そして、初期のbootstrap.jsにはrequire.config
object と initialがありますrequire
:
/*global define, require */
require.config({
baseUrl: 'js',
paths: {
lib1: '../lib/lib1/lib1'
},
shim: {
lib1: ['something']
}
});
require(['lib1', 'app'], function (lib1, app) {
app.doSth();
});
HTML ページには、属性script
を持つタグが 1 つだけ必要です。data-main
<body>
...
<script type="text/javascript" src="lib/require/require.js" data-main="js/bootstrap"></script>
</body>
編集:モジュールは AMD 準拠である必要はありませんが、独自の管理下にある場合は、AMD 準拠にすることをお勧めします。のshimプロパティを使用して、サードパーティの非 AMD ライブラリをロード可能にすることができますrequire.config
。