|
|
1
1
这似乎是一个非常重要的问题。有一个思考的起点 here 并从那里提及其他讨论。 我来自Java背景,所以没有直接体验你的世界,但在概念层面上,我的想法是: 模型对视图一无所知,它们只提供数据,还可以提供视图可能会发现有用的验证规则。例如:这里有一些日期,这个字段是“部门”字段。这里是所有有效部门的列表,作为一个模型,我对您一无所知,视图先生,但您可能会从该部门列表中填充一个下拉列表。 问题在于,模型最终会发送大量视图不关心的数据,继续阅读…… 控制器不知道视图和模型的实际内容,但他们知道某些视图对某些模型感兴趣。因此,他们有责任选择一个适当的视图,并安排它获取所需的数据。管家很像一家婚介公司,先做介绍,然后走开。 因此,在最一般的场景中,视图本身被赋予一个模型,并帮助自己获得所需的数据。所以视图知道模型,但反之亦然。现在作为一个实现细节,我们可以从关系中提取一个viewModel类,以保存视图的有趣数据,还可以将逻辑提取到viewModelFactory类。实际上,控制器可能有责任根据我们要访问的视图选择适当的ViewModelFactory,因此在某种意义上,控制器正在“创建”ViewModel,但逻辑是(概念)视图的责任。 |
|
|
2
0
对于您的第一个问题,我会在控制器中说,因为它是谁知道它将服务于哪个视图,所以这个视图需要知道什么。 |