私は物事を単純にしておきたいだけです - ルーティング解決なしで私のアプリケーションで以前のコンポーネントのデータ状態を解決するAngular 2/4はどのように実装されていますか?私は、データやアイテムを表示するためのいくつかのAPIリクエストを行うビュー特定のコンポーネントをアップ発射ルートビューに移動します)ここで角度2/4ルーティング:ネイティブモバイルアプリのように機能するのか、状態を解決する必要がありますか?
シナリオ
1で推奨角度設定(CLI^4.2.4)を使用しています
2)アイテムをクリックして、データのAPIリクエストも行う別のコンポーネントを使用して別のビューに移動する
3)ブラウザをクリックすると、前のビューが表示されます(ストレステストと異なるIDEの使用常に一貫しているとは限りません。私は心配しています)
ブラウザのキャッシュ/ヒープにコンポーネントの以前の状態が保存されているか、これを達成するためにAngularフレームワークが何らかの魔法を実行していますか? ネイティブモバイルアプリでは、以前のビューは実際には決して "逃げない"レイヤーに過ぎないことを認識しています。新しいビューを選択すると、古いビューがバックグラウンドで表示されます。それとも間違っているのですか?
最後のプロジェクトでは、以前のビューのデータを取得するためにビューリゾルバを使用しました。実装に時間がかかりましたが、完璧に機能しました。私は、将来のプロジェクトのために解決さを使用すると、音の決定であるか、新しい角度
角度は以前の状態を保存しません。以前のルートに戻った場合は、ルーティングがトリガーされ、最初のようにビューが再描画されます。 API呼び出しを実行すると、このコンポーネントをレンダリングするたびにAPIコールが再度実行されます。しかし、いくつかのキャッシュにAPIデータを格納し、ビューをレンダリングするときにこのキャッシュからデータを取得することができます。この種の状態を管理するには、reduxまたはngrxを見てください。 –
ええと、私はredux/fluxの状態マシンのデザインパターンが良い解決策であることに同意します(Reactはこれで素晴らしいです:-)私はちょうどそのドキュメントの通り、角度ルーティングの推奨範囲にとどまりようとしています。自動化されたものだけが私を恐怖にしています。私はこの質問をコミュニティに浮かべたいと思っていました。ありがとう! – Bdrizzle