AngularJS は、学習曲線が中程度から急勾配の複雑なフレームワークです。JQuery はフレームワークではなくライブラリです。シングル ページ アプリ、特に CRUD アプリの構築を検討している場合、AngularJS は、双方向のデータ バインディング、ルーティング (シングル ページ アプリにとって重要)、およびその他の多くの機能をすぐに利用できるため、最適です。
jQuery のサブセットである jQlite を使用していますが、アプリの構築方法について意見が分かれています。これは、それがどのように機能するかをしっかりと理解する必要があることを意味し、コントローラー、サービス、およびディレクティブを理解する必要があり、ディレクティブでのみ DOM を更新する必要がある理由を理解する必要があります。 .
シングル ページ アプリは jQuery だけを使用して実行できますが、フレームワーク側は自分で管理する必要があります。
AngularJS の前に jQuery を含めると、jQlite の代わりになります。基本を理解して、その使用に関する決定を下すための知識を身につけてください。egghead.io でこれらの優れたビデオをご覧ください。
jQuery に到達する時期
Angular の方法で何かを実行できない場合、jQuery に手を伸ばします。これは、多くの場合、フレームワークの境界にいる場合です。
例:
この例として、Angular には select 要素内の項目を無効にする方法がありません。ここで jQuery にアクセスして、select の変更イベントをリッスンし、ディレクティブから UI を自分で操作します。以下の更新を参照してください。
たとえば、サードパーティのライブラリを使用している場合、jQuery を使用してイベントをトリガーし、サードパーティのコードまたは他の場所でそれを取得する必要がある場合があります。ここでは、jQuery や pubsub のようなものが非常に貴重です。
アップデート
ルーティング機能に関しては、すぐに使用できるルーターではなく、優れたUI-Routerを強くお勧めします。
アップデート v2
Angular 1.4 では、select 要素でオプションを無効にする機能がサポートされるようになりました。