web-dev-qa-db-ja.com

ASP.NETMVCレイザービューとAngularJS

ビューでRazor構文を使用してASP.NetMVCを使用しています。しかし、パフォーマンスの向上に関する調査はほとんど行われていませんが、ViewEnginesがかみそりのコードをHTMLにコンパイルするのに時間がかかることがわかりました。では、ビューでレイザー構文よりもAngularJSを使用するのは良い考えですか?これによりパフォーマンスが向上する場合、他の長所と短所は何ですか?

前もって感謝します。

7
Tanmay

どのルートでパフォーマンスが向上するかは、いくつかの要因によって異なります。 mvc.netかみそりのビューに関するzambebの答えは正確ではありません。

mvc.net view sは、最初に要求されたときにコンパイルされ、その後はデータのみがコンパイル済みのビューにプラグインされます。これは、解析およびレンダリングされる角度ビューよりもはるかにプロセッサを集中的に使用しない操作です。

ただし、angularビューはクライアントでレンダリング(ブラウザ)です。何らかの理由でサーバーがニーズに対して不十分な場合は、-で構築するとサイトのパフォーマンスが向上します。 角度

一方、両方のサイトが適切なサイズのサーバーで構築されている場合、ブラウザのジョブの集中度が低いため、mvc.netのレンダリング時間が速くなる傾向があります。

もちろん、これの例外は、DOM操作やウィジェットではなく、ビューを使用してUIを少し変更したいサイトを構築している場合です。その場合も、angularが優先されます。

これが、mvc.netでビルドする場合、angularよりも少し大きく複雑なビューをビルドすることが理にかなっている理由です。

結局、各アプローチは悪用され、実行不足になる可能性があります。それぞれのアプローチは、特定のスタイルのサイトにも役立ちます。

これら2つのアプローチを組み合わせることもできます。 mvc.netでは、レイアウトページを作成してビューをhtmlフラグメントとしてレンダリングできます。つまり、フロントエンドangular開発者は静的ビューとコントローラーについてのみ心配する必要があり、mvc.net開発者はサーバー上のモデル、動的ビュー、およびコントローラーについて心配する必要があります。

幸運を!

6
N-ate