0
votes

Flutter: une chaîne non nulle doit être fournie à un widget de texte

J'ai une application et je veux voir le nom d'utilisateur du Créateur de l'annonce mais j'ai eu un petit problème lorsque je l'exécute, je reçois cette erreur:

  class _AdsListState extends State<AdsList> {
  @override
  Widget build(BuildContext context) {

    final ads = Provider.of<List<AdModel>>(context);

    return ListView.builder(
        scrollDirection: Axis.vertical,
        itemCount:(ads == null) ? 0 :  ads.length,
        itemBuilder: (context, index){
          return
            CustomAdTile(adModel: ads[index],);
        });
  }
}


1 commentaires

Vous pouvez utiliser quelque chose comme ça: texte (widget? .Admodel? .Aname ?? "non défini")


3 Réponses :


0
votes

Vous pouvez imprimer widget.admodel.username pour voir si c'est vraiment null et que vous devez également faire chèque null comme ce widget? .Admodel? .Asername ?? 'la valeur est null' xxx


3 commentaires

Vous avez imprimé widget.admodel.username et il a montré une valeur ou que vous avez imprimé widget.admodel . Lequel d'entre eux avez-vous imprimé?


J'ai imprimé widget.admodel.username et il montre la valeur


Cela signifie que widget.admodel.username est null alors. Quelque chose ne va pas avec votre modèle



0
votes

widget.admodel ne vous donne pas de valeurs mises à jour que vous obtenez la valeur par défaut de la variable comme NULL

Text(widget.adModel.username?? ""  , style: TextStyle(color: kPrimaryColor),),

Text(widget.adModel.location?? "", style: TextStyle(color: kPrimaryColor),),


0 commentaires

0
votes

C'est parce que widget.admodel.username est null. Vous pouvez contourner cette erreur en faisant ce xxx

?? Cela signifie fondamentalement si le premier est NULL, utilisez la deuxième chaîne


5 commentaires

Vous pouvez également partager la structure de classe Adjodel, également le code où vous passez ces paramètres


J'ai édité le code essaie d'utiliser ça et voyez si cela fonctionne


J'ai ajouté l'admode et comment je le transmettais et j'ai essayé votre code modifié mais je n'ai pas fonctionné aussi


Pouvez-vous me montrer le code dans lequel vous avez créé l'objet adjectel et avez passé des valeurs au constructeur


J'ai ajouté comment j'ai utilisé Admodel comme liste avec le fournisseur