我有这个简单的代码。
方法getPrint
返回“ a”,“ b”,“ c”两次。
共返回六个String。
我在做错什么吗?
List<String> li;
Future<List<String>> getList() async {
return ['a', 'b', 'c'];
}
void getPrint() {
for (String l in li) {
print(l);
}
}
void _init() async {
li = await getList();
getPrint();
}
@override
void initState() {
_init();
super.initState();
}
答案 0 :(得分:0)
您共享的代码不应导致任何内容运行两次。但是,如您在评论中提到的那样调用 setState()
将导致整个屏幕再次重建,从而导致 initState()
中的方法再次运行。