gpt4 book ai didi

ios - ID是否属于 View 模型

转载 作者:行者123 更新时间:2023-12-01 16:15:03 25 4
gpt4 key购买 nike

在使用MVC了很长时间之后,我决定使用MVVM。我了解了该模式的基础知识,并浏览了多篇文章,这些文章解释说MVVM每天都比MVC更好。我对此表示同意。

我决定制作自己的应用程序,以便正确设置MVVM背后的逻辑。因此,我创建了一个遵循MVVM原理的基本应用程序,过了一会儿,我发现了标题中出现的问题。

因此,基本上,这就是问题所在。假设我有一个对象,称为“人”。人有名字和姓氏。但是,当我想显示有关此人的详细信息时,我将获得地址,电话号码等。由于一个人可以拥有多个电话号码,因此我将获得一些API链接到用户ID的信息。

因此,我们提出了我的问题。如果我具有有关某个模型的一些基本信息,并且想要有关同一模型的详细信息,那么该详细信息的ID(或链接)应存放在哪里?我是否必须将其保留在 View Controller 中,这是错误的?还是即使不真正在用户界面上使用它,也将其保留在 View 模型中?

最佳答案

该ID也属于模型类。即,如果您有对象Person,则只需创建一个数据class Person,其中显然将包括所有成员,例如ID,名称,地址,数字等。您也可以使用相同的ID识别每个人。

View 模型不必总是知道ID。如果在 View 模型中有Person对象的列表,则可以使用ID轻松映射每个项目。另外,如果要当前选择某项或某物,则可以将其映射到该对象类型的Viewmodel属性,即Person。因此,除非在某些特殊情况下绝对需要,否则您无需在ViewModel中保留PersonID字段。

抱歉,但我不明白:So basically in prepareForSegue method I could say something like give me from current VM object at particular index and create VM for new view that I will actually send ?
就简单的应用程序而言,以上方法已绰绰有余。但是在极少数情况下,您可能需要在 View 模型中保留当前所选项目的ID。因此,如果您使用列表并为所选项目保留属性,则它可能不是该列表的类型,即Person。相反,它可能只是ID。

希望你明白了。

关于ios - ID是否属于 View 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39007718/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com