【发布时间】:2019-12-27 16:48:04
【问题描述】:
我是新来的颤振。我有两个屏幕。我的第一个屏幕是Stateful,它包含一个使用FutureBuilder 开发的列表视图,当我选择一个项目时,我将应用程序推送到一个同样为Stateful 类型的新屏幕。
当我移动到新屏幕时,之前屏幕的功能仍在调用,我不知道为什么会这样。
这就是我所做的:
InkWell(
onTap: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => QuizDetail(
quizID: featuredContests.id,
),
),
);
},
child: Card(...))// InkWell Closed
下一屏
class QuizDetail extends StatefulWidget {
final int quizID;
// In the constructor, require a QuizID.
QuizDetail({Key key, @required this.quizID}) : super(key: key);
@override
_QuizDetailState createState() => _QuizDetailState();
}
class _QuizDetailState extends State<QuizDetail> {
@override
void initState() {
super.initState();
getQuizDetail(quizID: widget.quizID);
}
它会调用这个函数,但它也会调用上一个屏幕中的函数,该函数用于从“A”网络获取数据,并且 initState 包含一个用于从 API“B”获取数据的函数,但是数据不是从“B”收到的,而是来自“A”,整个过程被驳回。有人可以帮忙吗?
【问题讨论】: