Flutter Web - 如何重新加载当前活动页面

Flutter Web - How to reload currently Active Page

我正在使用 Flutter 开发网站。 Flutter 一切正常,除了重新加载页面时。当我在浏览器中按下刷新按钮时,整个网络应用程序都会重新加载。

例如,如果我从初始页面导航到四个页面,当我从第四页按下刷新按钮时,初始页面被加载,我将不得不手动浏览到第四页再次翻页。

有什么方法可以在 Flutter 中加载当前活动页面吗?

查看 named routes 的导航,因为它在使用 Flutter Web 时无缝映射 URL。

编辑: 如果您需要 URL 参数(如 id、令牌...),请查看 this article.

或者您可以直接使用它,因为它会自动刷新整个 window

import 'dart:html' as html;
html.window.location.reload();

使用导航器推送到同一页面。 。IE。 如果 CurrentPage() 是您需要刷新的页面,则使用:

Navigator.of(context).push(MaterialPageRoute(builder: (BuildContext context) => CurrentPage()));

这将重新加载页面。

将 'dart:html' 导入为 html;

html.window.location.reload();

因为根据

这是不允许的

https://dart-lang.github.io/linter/lints/avoid_web_libraries_in_flutter.html

我是这样解决问题的:

导入这个包

https://pub.dev/packages/universal_html/install

想用就导入

将 'package:universal_html/html.dart' 导入为 html;

你可以这样使用它

html.window.location.reload();