我正在考虑从MvvmCross的版本4升级到版本5,我对ViewModel生命周期有几个问题。
我熟悉V4生命周期,(构造,初始化,重新加载状态和开始)但不确定它们如何映射到V5
我的问题是:
我理解准备和初始化,但哪一个等同于Start()?
V5 ViewModel生命周期中SaveState
和ReloadState
方法是否仍然可用?它会像以前一样工作吗?如果没有,我该如何管理呢?
答案 0 :(得分:1)
在旧版本的MvvmCross中,我们设置了Init
来设置变量,Start
用于执行更重(可能是异步)的工作。 Start是一个void方法,可以变成async void
,这根本就不好。
现在,较新的版本有Prepare
用于以静态类型方式处理传递的参数,Initialize
用于运行异步代码,顾名思义,初始化ViewModel。这些是IMO,比以前的方法更好地命名和客观地更好地工作。
关于第二个问题,即使使用new navigation service,SaveState和ReloadState仍可正常工作。