大規模な Web プロジェクトがあり、さまざまなプロジェクトのコンポーネントの中央リポジトリに配置できる、相互に通信できるコンポーネントが必要です。モジュール開発には reuirejs と Backbone を使用します。バックボーンとrequirejsで利用可能なさまざまな定型文を試しましたが、私の要件に一致するものはありませんでした。そのため、次のディレクトリ構造を作成しました。それは次のように説明できます。
---resources
|---custom-components
|---mycomponent
|---js
|---views
|---models
|---collections
|---css
|---templates
|---mycomponent.js
|---mycomponent2
|---js
|---views
|---models
|---collections
|---css
|---templates
|---mycomponent2.js
|---libraries
|---backbone
|---underscore
|---jquery
|---jquery-ui
|---jqueryplugins
|---jcarouselite
|---thirdpartyplugins
|---page-js
|---mypage.js
|---mypage2.js
- resources ディレクトリにはすべてのリソースが含まれます。その下には、前述のように 4 つのディレクトリがあります。
- libraries、jqueryplugins、および thirdpartyplugins は、明らかに、それらが言う名前のディレクトリです。
- page-js ディレクトリには、html ファイル内で requirejs data-main 属性として使用される実際の main-js が含まれます。
- Custom-component は、私たちが作成したすべてのウィジェットが存在する場所です。コンポーネントと同じ名前の js ファイルがあり、このウィジェットのエントリ ポイントになります。このディレクトリには、js、css、およびテンプレートのディレクトリもあります。CSS とテンプレートは、それぞれテキスト プラグインとCSSプラグインによって読み込まれます。Js ディレクトリには、このウィジェットを機能させるためのすべてのバックボーン コードが含まれます。
カスタム コンポーネントは、page-js にある main-js によって要求されます。
私が必要なものに来ます。
1. ウィジェットを他のチームと共有する必要がある大規模な Web プロジェクトの観点から、このディレクトリ構造を専門家に確認してもらいたいと思います。提案は大歓迎です。
2. 各カスタムコンポーネントは、パッケージ構造内だけでなくパッケージ構造外にも依存するモジュールを定義します。r.js を使用して、パッケージ構造内のカスタム ウィジェットの依存関係のみを最適化し、プラグインとライブラリを個別に最適化する方法があるかどうかを知りたいです。
3. 単一ページの ajax アプリケーションを開発しているので、必要に応じてモジュールを要求するので、不要なモジュールとウィジェットをクリーンアップする必要があります。注意すべきクリーンアップ方法はありますか?