Flutter/Dart中的内存对象缓存?

4

我正在构建一个社交媒体应用。一个名叫Fred的用户可能会:

  1. 下载Fred自己的个人资料并在屏幕上查看
  2. 查看Fred自己的粉丝
  3. 看到Sarah正在关注Fred
  4. 点击Sarah的名字以下载Sarah的个人资料
  5. 查看Sarah的粉丝
  6. 看到Fred正在关注Sarah
  7. 点击Fred的名字再次查看他自己的个人资料。

此时,应用程序中的屏幕堆栈如下所示:

Fred < Sarah < Fred

我希望两个Fred屏幕中的实例是完全相同的。由于是,如果Fred在顶部的Fred个人资料屏幕上更改了自己的帐户并按两次返回按钮,则底部的Fred个人资料屏幕应显示所做的更改。

随着用户在应用程序中导航,用户屏幕的堆栈可能会变得任意深。

我的想法是,当小部件请求对象时,程序首先检查所有当前正在使用的User对象的内存缓存,然后调用中央服务器的JSON API。

我希望当任何小部件不再需要时,对象可以被垃圾回收。

如何保持内存中的缓存,而无需在小部件initStatedispose方法中手动增加和减少引用计数?Dart中是否有类似于弱集合的东西可以使用?

谢谢!!!

1个回答

2
我认为你要找的是状态管理。一旦熟悉了Flutter基础知识,就必须开始使用它。
我建议从Provider开始。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接