当从一个页面跳转到另一个页面再返回时怎么刷新页面 Flutter

362 阅读1分钟

当返回到第一个页面时,监听到返回事件,然后主动触发第一个页面刷新

// 第一个页面
class _PagAState extends State<PageOne> { 
 _getRequests()async{
  print('这里进行操作');
 }
 @override
 Widget build(BuildContext context) {
  return Scaffold(
  body: Center(
  child: RaisedButton(onPressed: ()=>
  Navigator.of(context).push(new MaterialPageRoute(builder: (_)=>PageB()),)
  .then((val)=>val?_getRequests():null), // 通过then进行监听回调参数
  ),
  ));
  }
 }

第二个页面

class PageB extends StatelessWidget { // 第二个页面
 @override
 Widget build(BuildContext context) {
 //somewhere
 Navigator.pop(context,true); // 第二个就是需要传到参数B
 }
}