小编wat*_*man的帖子

如何用Dart语言将Future <List <Map>转换为List <Map>?

我用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)

dart flutter

10
推荐指数
2
解决办法
1万
查看次数

标签 统计

dart ×1

flutter ×1