大規模なアプリケーションで AngularJS を使用する予定です。現在、使用する適切なモジュールを探しているところです。
ngRoute
(angular-route.js) モジュールと ui-router (angular-ui-router.js) モジュールの違いは何ですか?
多くの記事ではngRoute
、 が使用される場合、ルートは を使用して設定されます$routeProvider
。ただし、ui-router で使用される場合、ルートは および を使用して設定され$stateProvider
ます$urlRouterProvider
。
管理性と拡張性を高めるにはどのモジュールを使用すればよいですか?
ベストアンサー1
UI ルーターはサードパーティのモジュールであり、非常に強力です。通常の ngRoute が実行できるすべての機能に加え、多くの追加機能もサポートしています。
ui-router が ngRoute よりも選択される一般的な理由は次のとおりです。
ui-routerはネストされたビューそして複数の名前付きビューこれは、他のセクションから継承するページがある可能性のある大規模なアプリで非常に便利です。
ui-routerを使用すると、状態名に基づいて状態間の強い型のリンクを作成できます。1か所でURLを変更すると、リンクを構築したときにその状態へのすべてのリンクが更新されます。
ui-sref
URL が変更される可能性のある大規模なプロジェクトに非常に便利です。という概念もありますデコレータこれを使用すると、アクセスしようとしている URL に基づいてルートを動的に作成できるようになります。つまり、事前にすべてのルートを指定する必要がなくなります。
州異なる州に関するさまざまな情報をマップしてアクセスすることができ、州間で情報を簡単に渡すことができます。
$stateParams
。テンプレート内のUI要素(現在の状態のナビゲーションを強調表示)を調整するために、状態または状態の親にいるかどうかを簡単に判断できます。
$state
$rootScope
ui-router によって提供され、に設定することで公開できますrun
。
本質的には、ui-router はより多くの機能を備えた ngRouter ですが、シートの下ではまったく異なります。これらの追加機能は、大規模なアプリケーションに非常に役立ちます。
詳しくは:
- GitHub: 翻訳元:参考:
- ドキュメンテーション:
- API リファレンス:出典: Angular 5
- ガイド:参考:
- よくある質問:https://github.com/angular-ui/ui-router/wiki/よくある質問
- サンプルアプリケーション:http://angular-ui.github.io/ui-router/sample/#/