34

私は、routeProvider を使用するかしないかにかかわらず、このジレンマに対する適切な回答を探していました。

残念ながら、$routeProvider はまもなく廃止され、$stateProvider に置き換えられるようです。残念ながら、このステートメントの正確性はわかりません。また、stateProvider は、まだ ui_router プラグインを介してのみ利用できます。

AngularJS Core の一部として stateProvider を追加する予定はありますか? 古い $routeProvider がすぐに置き換えられると想定しても問題ありませんか?

それらは確かにうまく連携できず、github で見つけた移行 CI は機能せず、ドキュメントも不足しています。

4

2 に答える 2

35

非常に長い時間が経過した後、1.1.1 から 1.2 に移行することに決めました。同時に、$routerProvider が実際にどれほど制限されているかを認識したので、ui-router を使用しました。これまでのところ、私たちはそれを気に入っています。ビューで複雑なネストを行うことができ、アプリにもう少し構造を追加できます。たとえば、$stateProvider では、データを変更して復元できる onEnter と onExit を定義できます。終了時に、非常に強力な transitionTo 状態にすることもできます。私は ui-router を Angular コアの一部にすることに投票し、$routeProvider を置き換えることさえします。これがあなたの決心に役立つことを願っています。基本的なアプリまたはデモ ページがある場合、$routeProvider は引き続き機能します。

于 2014-02-27T00:56:13.923 に答える
10

$routeProvider から始めて、$stateProvider に移行し、ui-router が提供する機能の一部を活用しました。移動したとき、移行はまったく簡単でした。そうは言っても、ui-router はまだ非常に初期の段階です ( GitHub ページから):

警告: UI-Router はプレベータ版であり、活発に開発中です。そのため、このライブラリは十分にテストされていますが、API は変更される可能性があります。安定性の保証が必要なプロジェクトでの使用はお勧めしません。

他に何かが必要だと判断するまで、$routeProvider を使用してください。それまでは、そのような変化があまり大きな問題にならないように、十分なテスト カバレッジを得ていることを確認してください。

于 2013-10-15T18:56:53.587 に答える