Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter API调用返回json字符串两次_Flutter_Dart - Fatal编程技术网

Flutter API调用返回json字符串两次

Flutter API调用返回json字符串两次,flutter,dart,Flutter,Dart,我试图在flatter中返回一个json字符串。我正在使用print功能在控制台中显示输出。但是,我的代码两次返回字符串。这是我的密码: import 'package:flutter/material.dart'; import 'dart:convert'; import 'package:http/http.dart' as http; void main() => runApp(new HomePage()); class HomePage extends Stateless

我试图在
flatter
中返回一个
json
字符串。我正在使用
print
功能在控制台中显示输出。但是,我的代码两次返回
字符串。这是我的密码:

import 'package:flutter/material.dart';
import 'dart:convert';
import 'package:http/http.dart' as http;


void main() => runApp(new HomePage());

class HomePage extends StatelessWidget {



  Future<http.Response> fetchPost() async{
    return await http.get('https://api.npoint.io/8c7aafe809d73af5f2b9');
  }


  void Data() async {
    var jsonString = await fetchPost();
    print(jsonString.body);
  }

  @override
  Widget build(BuildContext context) {
    Data();
    return new MaterialApp(
      home: new Center(
        child: new Text('Data'),
      ),
    );
  }
}
导入“包装:颤振/材料.省道”;
导入“dart:convert”;
将“package:http/http.dart”导入为http;
void main()=>runApp(新主页());
类主页扩展了无状态小部件{
Future fetchPost()异步{
return wait http.get('https://api.npoint.io/8c7aafe809d73af5f2b9');
}
void Data()异步{
var jsonString=await fetchPost();
打印(jsonString.body);
}
@凌驾
小部件构建(构建上下文){
数据();
返回新材料PP(
家:新中心(
子项:新文本(“数据”),
),
);
}
}

构建方法被调用两次,导致整个小部件再次被调用。考虑将<代码> StalelEsWestGue<代码>转换为<代码> StuteFultWIDGET < /> >并在

中添加HTTP调用方法
@覆盖
initState(){
你的代码
}