2017-11-01 12 views
1

私はMvvmCrossのバージョン4からバージョン5へのアップグレードを検討しており、ViewModelのライフサイクルに関するいくつかの質問があります。MvvmCross V5 ViewModelライフサイクル

私は、V4のライフサイクルに精通しています(、初期化、ReloadStateとスタートを構築)が、それらはV5

にマップする方法を確認していない私の質問は以下のとおりです。

  1. 私が準備し、初期化を理解しますそのうちのどれがStart()と同等ですか?

  2. SaveStateおよびReloadStateのメソッドは、V5 ViewModelライフサイクルで引き続き使用できますか?それは以前と同じように機能しますか?もしそうでなければ、私はこれをどのように管理するのですか?我々は重い(おそらく非同期)の作業を行うための変数とStartを設定するためのInitを持っていたMvvmCrossの古いバージョンで

答えて

1

。スタートはasync voidに変わる可能性のあるボイドメソッドでしたが、これはまったくうまくありませんでした。

新しいバージョンでは、渡されたパラメータを静的型で処理する場合はPrepare、非同期コードを実行する場合はInitializeとなります。名前が示すように、ViewModelを初期化します。これらはIMOであり、これまでのアプローチよりもはるかに優れていて客観的に作業するほうがはるかに優れています。

あなたの2番目の質問については、SaveStateとReloadStateは、new navigation serviceを使用しても正常に動作します。

さらに疑問がある場合は、migration guideViewModel lifecycle docs

関連する問題