flutter - 如何在 Flutter 中使用 flutter_bloc 自动刷新上一页(第一页)
问题描述
设想
有两个页面,第一页是 HomePage,它在 flutter_bloc 包的帮助下自动获取 api 数据。在主页(第一页)中,还有一个按钮可以在此代码的帮助下转到第二页(设置页面)Navigator.push(context, MaterialPageRoute(builder: (BuildContext context) => SettingsPage()));
。在第二页中,底部有 3 个单选按钮和一个按钮(按钮名称为保存)。当我点击保存按钮时,它会在这段代码的帮助下返回主页Navigator.pop(context);
问题
当我选择任何单选按钮并单击底部的按钮时,我如何刷新或重建主页并再次获取 api 数据。
解决方案
您可以将主页的 bloc 实例传递给设置页面 bloc,然后当您按下保存或更改设置中的选项时,在主页 bloc 中触发一个事件,该事件会获取更新的数据并发出导致主页块输出流。
推荐阅读
- javascript - Javascript数组和对象程序没有执行?Google 开发者工具上的控制台显示“Uncaught SyntaxError: Unexpected token ' { '
- python - 如何在 tkinter 中让按钮改变颜色?
- angularjs - 避免使用 $rootScope.$on——它有内存泄漏的风险
- haskell - 是否有可能有一个状态或混合单子?
- c++ - 我将如何为此添加 isValidPassword 函数?
- mysql - 如何强制连续 2 个时间戳的范围
- django - "detail": "未提供身份验证凭据。" 创建新用户时
- postgresql - Hibernate 和 PostgreSQL 的单字节整数类型?
- java - 使用 System.out.println 对 Void 方法进行记忆
- c++ - 使用 std::swap 禁用的 ADL