Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 颤振/飞镖-在PageView中编辑一个页面并查看更改,而不进行另一个MYSQL数据库查询?_Flutter_Dart_Flutter Bloc_Flutter Pageview_Flutter Redux - Fatal编程技术网

Flutter 颤振/飞镖-在PageView中编辑一个页面并查看更改,而不进行另一个MYSQL数据库查询?

Flutter 颤振/飞镖-在PageView中编辑一个页面并查看更改,而不进行另一个MYSQL数据库查询?,flutter,dart,flutter-bloc,flutter-pageview,flutter-redux,Flutter,Dart,Flutter Bloc,Flutter Pageview,Flutter Redux,我正在使用MYSQL数据库获取页面视图的JSON数据。我需要能够编辑一个页面,刷新页面视图,并在页面视图中看到新编辑的页面。到目前为止,我一直在使用提供程序来存储要编辑的页面的当前索引,就像这样 class AudioWidgetProvider with ChangeNotifier { int refreshIndex; setRefreshIndex (ri) { refreshIndex = ri; return refreshIndex; } } 在我的Pag

我正在使用MYSQL数据库获取页面视图的JSON数据。我需要能够编辑一个页面,刷新页面视图,并在页面视图中看到新编辑的页面。到目前为止,我一直在使用
提供程序
来存储要编辑的页面的当前索引,就像这样

class AudioWidgetProvider with ChangeNotifier {
int refreshIndex;

 setRefreshIndex (ri) {
    refreshIndex = ri;
    return refreshIndex;
  }
}
在我的
PageView.builder控制器
中,我正在检查
提供程序
中是否有
刷新索引
编号。如果它为空,我将给它默认的0作为初始滚动位置。否则,页面视图将滚动至
提供程序中存储的号码

controller: PreloadPageController(initialPage: audioWidgetProvider.refreshIndex?? 0),
当我导航到编辑页面时,我正在使用
Navigator.pushReplacement
处理页面视图

onPressed: () async {                                                    
 audioWidgetProvider.setRefreshIndex(currentIndex);    
 Navigator.pushReplacement(context,new MaterialPageRoute(
 builder: (BuildContext context) => EditPage()),
  );
}
最后,在使用新编辑的页面信息更新MYSQL数据库后,我导航回刷新的页面视图,现在该页面将滚动到新编辑的页面

Navigator.pushReplacement(context, MaterialPageRoute(builder: (context) =>HomePage()));
但是,如果在我编辑页面时,MySql数据库在任何时候都已使用新项目更新,则
refreshIndex
编号将不同步。因此,很明显,当我的应用程序上线时,我目前的方法是行不通的

那么,有没有一种方法可以像存储在
SQFLITE
数据库中那样存储MYSQL查询,编辑单个页面条目,然后用编辑过的页面重新加载内部查询,而不是用外部MYSQL查询重新加载PageView

我还没有想到在PageView中使用BLOC或REDUX,我希望找到一个更简单的解决方案。有人能把我引向正确的方向吗