私はMVCプロジェクトのJavaScriptコードを管理するための最良の方法を見つけようとしています。私のサイトのいくつかのページは、ページのワークフローのために、ユーザーインターフェイス用のjavascriptで非常に重いです。
開発とデバッグを容易にするために、すべてのjavascriptを4つの.jsファイルに分割します。このファイルにInitializations.jsは、あらゆる形式のjquery制御とフィールドの初期化を処理するDataRetrieval.jsすべての機能があり、ajaxを介してデータを取得および表示するすべての機能がDataModification.jsあります。 ajaxを介してサーバーにデータ変更を送信するためのすべての関数。これらのUtilities.js関数には役立つユーティリティ関数があります。
このように構造化することで、関数の機能に基づいて特定の関数がどのファイルに含まれているかがわかるだけでなく、JavaScriptファイルを小さく保つことができるという点で開発作業に役立ちました。また、Chromeのデバッガーからスクリプトを直接表示し、どのファイルを選択して、デバッグする必要のある関数を簡単に見つけることができるため、デバッグにも役立ちます。私が読んでいることから、ほとんどのブラウザは複数の.jsファイルを同時にダウンロードできるため、ページの読み込みが速くなるため、これも役立ちます。これにより、後で縮小することも簡単になります。
私が気付いている問題は、.jsファイルを使用すると、ビューではないため、C#コードを埋め込むことができないことです。つまり、すべてのURLにマジックストリングが必要であり(したがって、後でルートを変更する場合は、すべてのURLを手動で変更する必要があります)、C#で設定した定数を使用して、すべてを全面的に管理できるようにすることはできません(プロジェクトが非公開であることを意味する整数などの定数を変更すると、JavaScriptファイル内のすべての参照を検索して手動で変更する必要があり、バグが発生する可能性があります)。
今私が考えた1つの可能性は、JavaScriptファイルを部分的なビューに変換することです。ただし、これでも、ページのソースコードにjavascriptが散らばっているため、Webブラウザでのページのデバッグはかなり複雑になります。これにより、後でjavascriptを縮小することも困難になります。
では、JavaScriptを管理し、サイトのc#/ MVC部分と一致させ、変更が必要なときにDRYに違反する必要がないようにするために、他にどのような戦略を使用できますか?
私のサイトのWebアプリケーションの部分はまだ開発が進んでいるので、作成するJavaScriptはまだまだたくさんあります。そして、物事が手に負えなくなる前に、戦略を立てたいと思っています。