NoSuchMethodError。方法getPosts在null上被调用

时间:2020-03-01 08:28:16

标签: android flutter

我是新手。我正在尝试使用chopper库,并在调用该方法时收到错误。

    FutureBuilder<Response> _buildBody(BuildContext context){
    return FutureBuilder<Response>(
      future: Provider.of<PostApiService>(context).getPosts(),
            builder: (context,snapshot){
        if(snapshot.connectionState==ConnectionState.done){
            final List posts= json.decode(snapshot.data.bodyString);
            return _buildPosts(context,posts);

        }else{
          return Center(child: CircularProgressIndicator());
        }
      },
    );
}

1 个答案:

答案 0 :(得分:0)

您应该在Provider中初始化didChangeDependencies

  @override
  void didChangeDependencies() {
    _bloc = Provider.of<BlocClass>(context);
    super.didChangeDependencies();
  }

并将将来更改为

 future: _bloc.getPosts(),

确保在bloc类中定义getPosts()