【问题标题】:How to display the countdown time for all users [closed]如何显示所有用户的倒计时时间[关闭]
【发布时间】:2020-09-12 04:33:46
【问题描述】:
我正在构建一个颤振拍卖应用程序,我被困在拍卖产品的倒计时时间,所以我使用 firebase 实时数据库。
我必须确保所有用户同时看到倒计时。
请帮助我是否只是要搜索的关键字,类似的示例或可以帮助我的东西。
而且我可以用nodejs来辅助,
这是我的数据库,
当用户发布他们的产品时,我想要时间倒计时,然后我将这些数据显示在屏幕上。
我该把倒数计时器放在哪里?在颤振或火力基地。我在哭。
谢谢你的一切,
【问题讨论】:
标签:
firebase
flutter
firebase-realtime-database
dart
【解决方案1】:
一个简单的解决方案是设置拍卖的结尾DateTime。例如,如果您希望拍卖在两小时后终止,您可以添加
endingTime = DateTime.now().add(Duration(hours: 2))
到 Firebase 实时数据库,然后当用户来到你的拍卖时,你可以使用 Timer.periodic 计算每 1 秒的剩余时间,并在当前 DateTime 超过终止时间时停止计时器:
Timer.periodic(Duration(seconds: 1), (timer) {
remainingTime = endingTime.difference(DateTime.now());
if (remainingTime <= Duration.zero) {
timer.cancel()
}
});
最后,您可以只使用setState 来渲染remainingTime,或者使用StreamBuilder 实现StreamController 来渲染它。希望对您有所帮助。