Flutter开发 - initState中使用context,context为null的解决办法

573 阅读1分钟

initState是flutter生命周期中重要的一环,类似于iOS中viewWillAppera,是页面创建前初始化的一个必经步骤。

在这个步骤中,我们可能要先去准备一些数据,数据的来源可分为本地和网络请求。

在请求的过程中,我们可能会使用到context。

如果直接放在initState中,会发生context为null的情况,这时候你需要对这个使用context的方法做一个延时的动作:

Future.delayed(Duration.zero).then((value) async {
	///使用带context的方法
	xxxxxxx
});