我正在开发一个应用程序,该应用程序的一个屏幕显示项目列表,当用户点击一个项目时,会打开另一个屏幕,其中显示了被点击项目的详细信息。
我使用的是作用域模型架构,因此屏幕是StatelessWidget
的屏幕,它们使用具体的Model
的相同实例。
我的问题是我不确定哪种方法是将有关要显示的项目的信息传递到详细信息屏幕的最佳方法。
一种可行的方法是设置模型的成员,例如selectedItem
,移至所选项目。这样做的好处是完全基于模型,但实际上并不太干净,因为selectedItem
成员在不使用详细信息模式时是无用的(并且可能包含旧数据)。
另一种方法是将选定的项目(或其某种类型的标识符)传递给StatelessWidget
构造函数,并使用它从详细信息屏幕中的模型中检索正确的项目。但是,这意味着StatelessWidget
并不是真正的无状态的,因为它将需要存储在构造函数中传递的参数本身...
还有第三种更好的方法吗?