我正在编写一个在Flutter中显示WebView的应用程序。为此,我将webview_flutter
软件包添加到了pubspec.yaml
中,如下所示:
dependencies:
webview_flutter: "^0.3.18+1"
我要显示以下网址:https://cran.r-project.org/web/packages/tutorial/vignettes/tutorial-basics.html
所以我做了以下事情:
class WebViewExample extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Scaffold(
body: Container(
child: WebView(
initialUrl: 'https://cran.r-project.org/web/packages/tutorial/vignettes/tutorial-basics.html',
javascriptMode: JavascriptMode.unrestricted,
userAgent: "Google Chrome Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36.",
)
)
);
}
}
除我尝试运行R
代码外,其他所有操作均按预期进行。尽管在浏览器中运行良好,但Datacamp小提琴试图设置工作区,但我得到:“ 您的会话已断开连接”。
我也尝试了flutter_webview_plugin
,但结果相同。
有人建议运行吗?
答案 0 :(得分:0)
您可以为WebView
使用完成器,并在onWebViewCreated()
中使用它
final Completer<WebViewController> _controller =Completer<WebViewController>();
WebView(
initialUrl: selectedUrl,
javascriptMode: JavascriptMode.unrestricted,
onWebViewCreated: (WebViewController webViewController) {
_controller.complete(webViewController);
},
)