我用dart语言编写了一个问题.如何将Future转换为正常List?在我的程序中,我需要从web继续下一步的结果,我不知道该怎么做.在我的例子中,我需要将变量"data"的值作为List返回.
class _MyAppState extends State<MyApp> {
static List getList() {
var url = "http://watcherman.cn/web/json.php";
var data;
HttpClient client = new HttpClient();
client.getUrl(Uri.parse(url))
.then((HttpClientRequest request) => request.close())
.then((HttpClientResponse response) {
response.transform(UTF8.decoder).listen((contents) {
String jsonContent = contents.toString();
data = JSON.decode(jsonContent);
});
});
return data;
}
}
Run Code Online (Sandbox Code Playgroud)
但似乎没有执行网络部分.扑动代码部分似乎无法接受未来.
class _MyAppState extends State<MyApp> {
static List content = getList();
@override
Widget build(BuildContext context) {
return new Container(
child: new ListView.builder(
scrollDirection: Axis.vertical,
padding: new EdgeInsets.all(6.0),
itemCount: content.length,
itemBuilder: (BuildContext context, int index) {
return …Run Code Online (Sandbox Code Playgroud)