如何将字符串中的内容加载到webView中?

时间:2018-03-21 16:04:26

标签: swift webview

我将webView内容保存到NSUserDefaults中以供离线使用。

func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
    let script = "document.documentElement.outerHTML.toString()"
    webView.evaluateJavaScript(script,completionHandler: { (out: Any?, error: Error?) in
        self.htmlContent = out as! String!
    })
}

将内容从htmlContent加载回webView的方法是什么?

1 个答案:

答案 0 :(得分:0)

您应该使用:

func loadHTMLString(_ string: String, 
        baseURL: URL?) -> WKNavigation?

这样:

webView.loadHTMLString(self.htmlContent, baseURL: nil)

您可以阅读有关此方法的更多信息: https://developer.apple.com/documentation/webkit/wkwebview/1415004-loadhtmlstring

更好的是使用guard代替强制转换:

guard let htmlContent = out as? String else {
    return
}
self.htmlContent = htmlContent