fatal error: LPWebView encounters an error: Error Domain=WKErrorDomain Code=4
"A JavaScript exception occurred" UserInfo=0x79d9c700
{NSLocalizedDescription=A JavaScript exception occurred}
我在尝试使用WKWebView计算JavaScript函数时遇到了此错误。
我使用loadHTMLString
将模板加载到webview。
let bundle = NSBundle.mainBundle()
if let editorURL = bundle.URLForResource(self.kTemplateName,
withExtension: "html") {
var error : NSError?
//get html string from editor.html
if let htmlString = String(contentsOfURL: editorURL, encoding: NSUTF8StringEncoding, error: &error){
if error != nil {
assertionFailure("error encountered reading html string for \(error)")
} else {
self.loadHTMLString(htmlString, baseURL: bundle.bundleURL)
}
}
} else {
assertionFailure("LPWebView template not found")
}
我想知道这个错误代码是什么意思以及如何解决它?
非常感谢!
1条答案
按热度按时间sigwle7e1#
所以如果我们深入研究标题:
错误代码4对应于
JavaScriptExceptionOccurred
或WKErrorJavaScriptExceptionOccurred
。换句话说,JavaScript函数会导致一些错误。
可能这里没有更多你猜不到的了。为了解决问题,我建议使用Safari等Web浏览器的开发人员功能,加载HTML并调试。
事实上,正如WWDC 2014 video, "Introducing the Modern WebKit API"中所解释的那样,您的桌面Safari浏览器可以 *“使用Safari Web检查器检查
WKWebView
,包括您注入的任何用户脚本。要使用此功能,当
WKWebView
加载到iOS模拟器上运行的应用程序的内存中时,打开桌面Safari浏览器并访问顶部菜单栏上的Develop,然后访问iOS模拟器。这将显示Web视图的文档对象的下拉列表。有关调试JavaScript的更多信息,请查看Web Inspector: Understanding Stack Traces