Je veux filtrer une liste d'identité par ID ou votre auteur à l'aide de fournisseur après que je clique sur Relevablebutton, mais rien ne semble se produire, c'est ce que l'identifiant a fait:
Le bouton actualisé P>
@override
Widget build(BuildContext context) {
final todo_provider = Provider.of<TodoProvider>(context);
// TODO: implement build
return Container(
child: FutureBuilder<News>(
future: _future,
initialData: todo_provider.getnews,
builder: (context, snapshot) =>
snapshot.connectionState == ConnectionState.none ||
snapshot.data == null
? CircularProgressIndicator()
: Container(
height: 500.0,
child: ListView.builder(
shrinkWrap: true,
itemCount: snapshot.data.articles.length,
itemBuilder: (context, index) => Text(
snapshot.data.articles[index].author.toString(),
),
),
),
),
);
}
3 Réponses :
Essayez d'envelopper votre fonction déprimée par un setState
onPressed: () {
setState() {
todo_provider.settNewss('John Biggs');
}
},
Merci de votre réponse, ce n'est pas la bonne façon de résoudre le problème parce que j'utilise un fournisseur qui signifie que je dois éviter la State () {}
Je n'ai pas remarqué que désolé
Lorsque vous utilisez un fournisseur, pour mettre à jour les données à votre consommateur, vous devez utiliser
final todo_provider = Provider.of<TodoProvider>(context, listen: false);
Merci, mais j'ai déjà ajouté NotifyListener (); Quand j'appelle la méthode de SettNewsSS ()
J'ai enfin trouvé une solution, consiste à mettre à jour la valeur future sur futurbuilder:
ancienne: p> nouveau: p> ou: p>