///隐藏H5登录页的返回键
void _handleBackForbid() {
const jsStr =
"var element = document.querySelector('.animationComponent.rn-view'); element.style.display = 'none';";
if (widget.backForbid ?? false) {
controller.runJavaScript(jsStr);
}
}
报错信息:
[ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: PlatformException(FWFEvaluateJavaScriptError, Failed evaluating JavaScript., A JavaScript exception occurred (WKErrorDomain:4:{WKJavaScriptExceptionLineNumber: Unsupported Type: 1, WKJavaScriptExceptionMessage: TypeError: null is not an object (evaluating 'element.style'), WKJavaScriptExceptionSourceURL: Unsupported Type: https://m.ctrip.com/webapp/myctrip/, NSLocalizedDescription: A JavaScript exception occurred, WKJavaScriptExceptionColumnNumber: Unsupported Type: 77}), null)
#0 WKWebViewHostApiImpl.evaluateJavaScriptForInstances (package:webview_flutter_wkwebview/src/web_kit/web_kit_api_impls.dart:1167:7)
<asynchronous suspension>
#1 WebKitWebViewController.runJavaScript (package:webview_flutter_wkwebview/src/webkit_webview_controller.dart:462:7)
<asynchronous suspension>我自己写的js不会报错,但是浏览器执行会隐藏,但是在app里面就不会隐藏
jsCode = ;
函数都是写在这里的
onPageFinished: (String url) {
_handleBackForbid();
},