我知道对于后退按钮我们可以使用willpopscope,但是现在我正在尝试阻止用户刷新页面,有没有办法禁用刷新按钮或者在用户点击刷新按钮时提示一条消息?willpopscope的示例
willpopscope
return WillPopScope ( onWillPop: () async { return shouldPop; }, child: const Text('WillPopScope sample'), );
72qzrwbm1#
将其添加到lib/web/index.html将显示一个确认对话框:
lib/web/index.html
... <body> <script type="text/javascript"> window.onbeforeunload = function() { return "Changes that you made may not be saved."; } </script> ... </body> ...
就像这样:
ie3xauqp2#
一个更优雅的网络解决方案是:
import 'dart:html' as html; html.window.onBeforeUnload.listen((event) async { if (event is html.BeforeUnloadEvent) event.returnValue = "Don't go!"; });
就像这样,只有你想要警告的页面才会触发这个事件,否则所有的窗口都会触发这个事件。
2条答案
按热度按时间72qzrwbm1#
将其添加到
lib/web/index.html
将显示一个确认对话框:就像这样:
ie3xauqp2#
一个更优雅的网络解决方案是:
就像这样,只有你想要警告的页面才会触发这个事件,否则所有的窗口都会触发这个事件。