2

MaterialPageRoute有什么作用context?建造者的目的是什么在这里。

MaterialPageRoute(builder: (context) {
                  return Scaffold(
                    appBar: AppBar(
                      title: Text("Second Route"),
                    ),
                    body: Center(
                      child: RaisedButton(
                        onPressed: () {
                          Navigator.pop(context);
                        },
                        child: Text('Go back!'),
                      ),
                    ),
                  );
                }
4

1 回答 1

0

小部件的每个状态都需要一些上下文来执行某些工作,应该使用直接或间接上下文。

随着小部件在树周围移动,特定小部件的 [BuildContext] 可以随时间改变位置。因此,从此类中的方法返回的值不应在执行单个同步函数之后进行缓存。

例子:

在使用后退导航的问题代码中,Navigator.pop(context); 它将以单独的状态运行,而不是导航开始的构建(上下文)

于 2020-10-12T06:11:54.127 回答