Flutter 在FutureBuilder中设置类型的最佳方法?
在Flutter 在FutureBuilder中设置类型的最佳方法?,flutter,dart,Flutter,Dart,在FutureBuilder中设置快照数据类型的最佳方法是什么? 例如,在下面的代码中,我希望我的future返回一个列表,但无法调用snapshot.data.length,因为我的代码不知道它应该是列表,它只知道它是对象?类型的对象 FutureBuilder( future: locator<UniversityApi>().getUniversities builder: (context, snapshot) => ListView.builder(
FutureBuilder
中设置快照数据类型的最佳方法是什么?
例如,在下面的代码中,我希望我的future返回一个列表,但无法调用snapshot.data.length,因为我的代码不知道它应该是列表,它只知道它是对象?
类型的对象
FutureBuilder(
future: locator<UniversityApi>().getUniversities
builder: (context, snapshot) => ListView.builder(
itemBuilder: snapshot.data.length, //this line does not work
),
),
...
FutureBuilder(
future:locator().getuniversions
生成器:(上下文,快照)=>ListView.builder(
itemBuilder:snapshot.data.length,//此行无效
),
),
...
您可以这样定义快照类型:
FutureBuilder<List<dynamic>>( // replace dynamic with your type
future: locator<UniversityApi>().getUniversities
builder: (context, snapshot) => ListView.builder(
itemBuilder: snapshot.data.length, //this line should work now
),
),
...
FutureBuilder<List<dynamic>>( // replace dynamic with your type
future: locator<UniversityApi>().getUniversities
builder: (context, snapshot) {
if (snapshot.hasData) {
return ListView.builder(
itemBuilder: snapshot.data.length,
);
}
return SizedBox(); // Return any placeholder widget
}
),
...