【发布时间】:2020-07-01 15:26:23
【问题描述】:
我正在使用流从 REST API 检索数据,但是当数据库中的数据更新时,流不会刷新应用中的数据。
StreamController _productsController = new StreamController();
...
//products is a list that contains the data
_productsController.add(products);
...
body: Container(
child: StreamBuilder(
stream: _productsController.stream,
builder: (BuildContext context, AsyncSnapshot snapshot) {...}
我看到一个解决方案建议定期从 API 重新加载数据,例如每 1 秒一次。
Timer.periodic(Duration(seconds: 1), (_) => loadDetails());
来源:Stream for API coming from PHP in Flutter (Not Firebase)
我不认为这是一种有效的方法。例如,在我的应用中,我想在不重新加载数据的情况下集成数据更改。
有没有一种有效的方法可以让流在不重新加载数据的情况下反映应用中的数据变化?
【问题讨论】:
-
有什么更新吗?
-
@ZeffryReynando 您可以使用计时器,但这不是一种有效的方法,或者在适用的情况下使用套接字,否则使用另一种替代方法,例如 firebase/firestore 实时