在几个示例项目中,我看到了 ViewModels 用于将数据对象转换为字符串,以便在视图中使用。
ViewModel 通常有一个构造函数,它接收一个参数——一个数据对象。然后构造函数将填充 ViewModel 的各种属性(主要是字符串和整数)。
这可以防止视图中出现任何复杂的逻辑。
乍一看,这对我来说似乎是个好主意,因为它更充分地强制将视图与复杂逻辑分离。
例如,假设我的视图试图呈现数据对象的属性“大小”,大小是 1 到 3 之间的数字,表示“小/中/大”。
我的视图中没有 if/switch 语句,而是在我的 ViewModel 中有一个“SizeString”或类似的东西,并且 if/switch 语句将进入 ViewModel 构造函数。
有人不同意这种方法吗?
使用其他方法会更好吗,例如助手?如果是这样,为什么?