string 'не является подтипом типа' int 'из' index 'flutter при извлечении данных api в listview. Флаттер

Здесь я пытаюсь получить данные из api и передать их в список с помощью streambuilder

class _MyHomePageState extends State<MyHomePage> {
    
      String _url = "https://owlbot.info/api/v4/dictionary";
      String _token = "f2b517e6582daa3acc7df5f259c5707dc9d2147e";
    
      TextEditingController _controller = TextEditingController();
    
      StreamController _streamController;
      Stream _stream;
    
      _search() async{
        if(_controller.text == null || _controller.text.length == 0){
          _streamController.add(null);
        }
        Response response = await get(_url + _controller.text.trim(), headers: {"Authorization": "Token " + _token});
        if(response.statusCode == 200){
        var encode = json.encode(response.body);
        
        _streamController.add(json.decode(encode));
        }
        else{
          print(response.statusCode);
        }
      }

Это код, в котором я хочу показать свои данные в виде списка, но получаю сообщение об ошибке (строка 'не является подтипом типа' int 'из' index ')

 return ListView.builder(
                itemCount: snapshot.data["definitions"].length ,
                itemBuilder: (BuildContext context, int index){
                  return ListBody(
                    children: <Widget>[
                      Container(
                        color: Colors.grey[300],
                        child: ListTile(
                          leading: snapshot.data["definitions"][index]["image_url"] = null ? null : CircleAvatar(
                            backgroundImage: NetworkImage(snapshot.data["definitions"][index]["image_url"]),
                          ),
                        ),
                      ),
                    ],
                  );
                },
              );

person Harsh    schedule 21.08.2020    source источник
comment
вы пробовали .toString ()?   -  person Ali Alqallaf    schedule 21.08.2020
comment
куда? @AliAlqallaf   -  person Harsh    schedule 22.08.2020


Ответы (1)


Проверь это

return ListView.builder(
                itemCount: snapshot.data["definitions"].length ,
                itemBuilder: (BuildContext context, int index){
                  return ListBody(
                    children: <Widget>[
                      Container(
                        color: Colors.grey[300],
                        child: ListTile(
                          leading: snapshot.data["definitions"][index]["image_url"] = null ? null : CircleAvatar(
                            backgroundImage: NetworkImage((snapshot.data["definitions"] as List)[index]["image_url"]),
                          ),
                        ),
                      ),
                    ],
                  );
                },
              );
person spycbanda    schedule 21.08.2020
comment
Нет, он не работал в качестве списка. Та же проблема @spycbanda - person Harsh; 22.08.2020