首页 > 解决方案 > 如何将javascript文件注入来自api的html字符串?

问题描述

我有一个来自 api 的 html 字符串。我需要注入我的代码中存在的静态 javascript 文件。

谢谢

标签: iosswiftwkwebviewwkwebviewconfiguration

解决方案


您可以使用 WKUserScript 并使用 WKWebViewConfiguration 将 javascript 附加到 webview。

let contentController = WKUserContentController()
guard let scriptPath = Bundle.main.path(forResource: "script", ofType: "js"),
let scriptSource = try? String(contentsOfFile: scriptPath) else { return }
let script = WKUserScript(source: scriptSource, injectionTime: .atDocumentEnd, forMainFrameOnly: true)
contentController.addUserScript(script)
let config = WKWebViewConfiguration()
config.userContentController = contentController

let webView = WKWebView(frame: .zero, configuration: config)
self.view.addSubview(webView)

webView.loadHTMLString(htmlString, baseURL: nil)

推荐阅读