我想做一个应用程序,它使用:
Afaik,我需要单独的ViewModel为每个fragment,这是正确的吗?但是repositories呢?我应该做一个仓库来处理room,和retrofit,或者我应该分开它们?
ViewModel
fragment
repositories
room
retrofit
cyvaqqii1#
是的,根据最佳实践,你应该为每个片段都有一个单独的ViewModel。对于repository,我认为应该只有一个repository。repository提供来自本地(ROOM)和远程(API)源的数据。此外,您可能还添加了一些逻辑,例如当设备离线时使用本地数据源,因此拥有一个repository是很好的。
1条答案
按热度按时间cyvaqqii1#
是的,根据最佳实践,你应该为每个片段都有一个单独的ViewModel。
对于repository,我认为应该只有一个repository。repository提供来自本地(ROOM)和远程(API)源的数据。此外,您可能还添加了一些逻辑,例如当设备离线时使用本地数据源,因此拥有一个repository是很好的。