有什么办法可以从“ Dart”中的类(apiData)返回数据?

时间:2020-05-13 06:23:06

标签: flutter dart

class _CategoriesPageState extends State<CategoriesPage> {
  List postsData;
  int categoryID;

  void getApiData() async {
    //Get posts api data
    ApiData apiData = ApiData(
      apiUrl: 'http://website.com/wp-json/wp/v2/posts?categories=$categoryID',
    );

    dynamic responseBody = await apiData.getData();
    setState(() {
      postsData = json.decode(responseBody);
    });
  }

现在,我想到达小部件中的(apiData),但是由于它位于void函数内部,因此无法使用它。

1 个答案:

答案 0 :(得分:0)

您必须在函数外部创建一个变量,以便可以通过类对象进行访问。

class _CategoriesPageState extends State<CategoriesPage> {
  List postsData;
  ApiData apiData 
  int categoryID;

  void getApiData() async {
    //Get posts api data
    apiData = ApiData(
      apiUrl: 'http://website.com/wp-json/wp/v2/posts?categories=$categoryID',
    );

    dynamic responseBody = await apiData.getData();
    setState(() {
      postsData = json.decode(responseBody);
    });
  }