swift - WKWebView 已失效" UserInfo={NSLocalizedDescription=WKWebView 已失效
问题描述
我正在尝试使用 webView 检索 html。我不想在视图文件中编写我的 webView 代码,因此试图在不同的类中实现它。下面是我的代码。
class BlobHelper: NSObject,WKNavigationDelegate{
let webView = WKWebView()
func getLyrics(){
let url = URL(string: "https://Blob")!
let request = URLRequest(url: url)
webView.load(request)
webView.evaluateJavaScript("document.getElementsByTagName('html')[0].innerHTML;", completionHandler: {(value,error)in
print(value)
print(error)
})
}
func webView(_ webView: WKWebView,didFinish navigation: WKNavigation!) { print("loaded") }
当我执行代码时,我得到Optional(Error Domain=WKErrorDomain Code=3 "The WKWebView was invalidated" UserInfo={NSLocalizedDescription=The WKWebView was invalidated})
.
我试过的我能够使用静态检索html,但加载后无法调用didFinish。任何帮助表示赞赏。
解决方案
class ViewController: UIViewController, WKNavigationDelegate {
var webView = WKWebView()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
let configuration = WKWebViewConfiguration()
self.webView = WKWebView(frame: .zero, configuration: configuration)
webView.navigationDelegate = self
let url = URL(string: "https://stackoverflow.com")!
let request = URLRequest(url: url)
webView.load(request)
self.view = webView
}
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
webView.evaluateJavaScript("document.getElementsByTagName('html')[0].innerHTML;", completionHandler: { (value,error)in
print(value)
})
}}
推荐阅读
- linux - 如何在没有 `sudo` 权限的情况下安装这个新的 git version2.8.6?
- python - 如何使用 xlwt 将数据从 python 写入 Excel 而不删除行?
- javascript - Highcharts Gauge 未在 Angular 中显示
- swift - 增加 UIBUTTON 的点击区域
- javascript - 在 SharePint 2013 中使用了 Content WebEditor。在 SharePoint 2019 中不再工作。发生了什么
- amazon-web-services - 获取 - UserNotFoundException - 同时调用 adminCreateUser - AWS Cognito
- javascript - 反应firestore快照不是功能
- c# - 在 Button1Command 中设置 Command.Parameter1 并在 Button2Command 中使用 Command.Parameter1 的值返回 null
- javascript - 在 WooCommerce 单品页面的第一张图片下添加图片标题
- firebase - Flutter with Firebase DatabaseError:权限被拒绝