发布于 2021-05-16 06:10:50
根据作文指导中的思考
每次可观察到的数据更新时,您的可组合对象都负责将当前的应用程序状态转换为UI。
应用状态是真理的来源。这与app体系结构指南相匹配,在该状态下,您的状态由负责实际获取、存储和缓存数据的低级组件拥有,然后这些组件将公开到UI层中。负责获取、存储和缓存数据的这一层通常称为“存储库层”。
这意味着,在导航图中的目标之间直接传递数据快照是解决问题的完全错误的方法:它创建了一个真实问题的来源(您相信在目的地或存储库之间发送的快照吗?)答案总是一样的:您的存储库应该始终是真相的来源,并且您应该,而不是,在目的地之间传递数据快照。这样,每一个使用存储库作为其真实来源的屏幕()都会自动获得最新的信息,而且从不需要“刷新”您的数据。
因此,您的体系结构将包括三个层:
mutableStateOf<List<Entry>>()保存在内存中的列表,当数据用新列表更改时,您可以更新该列表。这个类将负责与服务器对话、本地缓存等。getEntries(),而ViewModel B可能公开createEntry(Entry)方法。https://stackoverflow.com/questions/67553012
复制相似问题