【发布时间】:2020-11-29 15:46:44
【问题描述】:
我正在尝试运行一个 javascript 命令,如果我在网络上的控制台中运行它就可以工作。我已经尝试执行下面的代码,但我的响应一直是 nil。
webView.evaluateJavaScript("command") { (result, error) in
if error == nil {
print(result)
} else {
print(error)
}
}
【问题讨论】:
-
为了更正
if error != nil { print(result) }这意味着错误--->那么没有结果。 -
我修复了它,这是我得到的错误:
Error Domain=WKErrorDomain Code=4 "A JavaScript exception occurred" UserInfo={WKJavaScriptExceptionLineNumber=0, WKJavaScriptExceptionMessage=TypeError: undefined is not an object, WKJavaScriptExceptionColumnNumber=0, NSLocalizedDescription=A JavaScript exception occurred我只想运行一个命令,当我将它放在我电脑上的 chrome 中的 javascript 控制台中时,我知道它肯定有效。这可能吗? -
直接在 WKWebView 中测试你的命令。您可以将桌面 Safari 的网络检查器附加到当前在 iOS 模拟器中打开的网络视图。
-
您可以尝试的示例 javascript 命令是
(() => { return 5 })();,看看您在 iOS 上的结果是否为 5。 javascript 只是创建并运行一个返回值 5 的函数。
标签: javascript ios swift webview java-console