如何解决Flutter 无法使用提供程序在另一个页面上获取值
我正在使用提供程序包将从 API 调用中获得的数据传输到不同的页面。我的用例是在获得 API 响应后,数据应该发送到不同的其他页面。 问题是,当我点击通向其他页面的按钮时,什么也没有发生。但是,当我删除我的提供程序实例时,该按钮起作用并且能够继续到下一页,但没有来自我的 API 调用的数据。
一些代码供参考
//Code that is supposed to supply values received from API call
if (response.statusCode==200){
jsonData= json.decode(response.body);
setState(() {
sharedPreferences.setString("token",jsonData["token"]);
sharedPreferences.setInt("rvcid",jsonData["rvc_id"]);
userRvcs=jsonData["user_rvcs"];
});
Provider.of<userRvcDdata>(context).updateRvc(userRvcs);
Navigator.pushReplacement(
context,MaterialPageRoute(
builder: (context) =>
Dashboard(userRvcs: userRvcs,)
));
}
//My provider class
class userRvcDdata extends ChangeNotifier{
List userRvcs=[];
void updateRvc(List newRvc){
userRvcs=newRvc;
notifyListeners();
}
getuserRvcs() {
return userRvcs;
}
}
//My main.dart provider section
Widget build(BuildContext context) {
return ChangeNotifierProvider<userRvcDdata>(
create: (context)=> userRvcDdata(),child: MaterialApp()
//How am trying to use the provider values in the other page (not Dashboard())
List received=Provider.of<userRvcDdata>(context).gettaskrad()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。