在WebView flutter中对空值使用了空检查运算符

iyfjxgzm  于 2022-12-27  发布在  Flutter
关注(0)|答案(2)|浏览(116)

请一个错误当我尝试到重新载入我的webview从一个按钮:E/扑动(18150):[错误:flutter/lib/ui/ui_dart_state. cc(198)]未处理的异常:对空值使用了空检查运算符

RaisedButton(
                        padding: const EdgeInsets.symmetric(vertical: 10,horizontal: 30),
                        onPressed: () async {
                          controller.reload();
                        },

这是我的WebView

WebView(
                  initialUrl: "https://wikoget.com",
                  javascriptMode: JavascriptMode.unrestricted,
                  onWebViewCreated: (controller){
                   this.controller=controller;
                  },
                  onPageFinished: (String url) {
                    controller
                        .evaluateJavascript("javascript:(function() { " +
                        "var head = document.getElementsByClassName('main-header-bar-wrap')[0];" +
                        "head.parentNode.style.cssText = ' position: sticky;position: -webkit-sticky; top : 0 ';" +
                        "var footer = document.getElementsByTagName('footer')[0];" +
                        "footer.parentNode.removeChild(footer);" +
                        "})()")
                        .then((value) => debugPrint('Page finished loading Javascript'));
                    },
                  onWebResourceError: (error) => setState(() {
                    controller.loadUrl("about:blank");
                    isError = true;
                  }),
                  gestureNavigationEnabled: true,
                ),
jvidinwx

jvidinwx1#

在此处输入代码在使用变量之前,使用回退运算符为空值设置默认值。

String? str; //nullable value
str ??= "Fallback Value";
print(str); //Output: Fallback Value

这里,“str”为空,我们用fallback值设置fallback操作符,以防“str”为空。

zrfyljdw

zrfyljdw2#

如果您正在使用最新更新的flutter_webview并得到这个错误,只需停止当前的调试会话并启动一个新的调试会话。

相关问题