Flutter升级flutter_inappwebview至6.0.0后类型不匹配问题求助
解决flutter_inappwebview 6.0.0版本中Uri无法赋值给WebUri的问题
flutter_inappwebview 6.0.0版本做了类型变更,URLRequest的url参数不再支持Dart原生的Uri类型,必须使用包内提供的WebUri类型,这就是你遇到报错的原因。
修改方法很简单,把代码里的Uri.parse()替换成WebUri构造方法即可:
修改后的代码片段:
return Observer(builder: (context) { return Stack( children: [ wishListStore.isNetworkAvailable ? InAppWebView( key: webViewKey, initialUrlRequest: URLRequest( url: WebUri(widget.mInitialUrl == null ? 'https://www.google.com' : widget.mInitialUrl!)), initialOptions: options, onWebViewCreated: (controller) { webViewController = controller; }, onLoadStart: (controller, url) { log("onLoadStart"); setState(() { isLoading = true; });
如果需要在Dart原生Uri和WebUri之间转换,还可以用这两个方法:
- 从
Uri转WebUri:WebUri.fromUri(yourUri) - 从
WebUri转Uri:yourWebUri.toUri()
内容的提问来源于stack exchange,提问作者محمد البحراني
相关产品推荐
相关产品推荐

