Когда я изменяю WKUserContentController
после создания WKWebView
экземпляра. Вот мой код.
let configuration = WKWebViewConfiguration()
let userController = WKUserContentController()
userController.addUserScript(WKUserScript(source: "alert('it works')", injectionTime: .atDocumentEnd, forMainFrameOnly: true))
configuration.userContentController = userController // before instantiate WKWebView
webView = WKWebView(frame: view.frame, configuration: configuration)
webView.navigationDelegate = self
webView.uiDelegate = self
view = webView
выше код работает нормально, но ниже не
let configuration = WKWebViewConfiguration()
let userController = WKUserContentController()
userController.addUserScript(WKUserScript(source: "alert('it doesn't work')", injectionTime: .atDocumentEnd, forMainFrameOnly: true))
webView = WKWebView(frame: view.frame, configuration: configuration)
webView.navigationDelegate = self
webView.uiDelegate = self
webView.configuration.userContentController = userController //
// neither configuration.userContentController = userController
view = webView
Почему это происходит?
На самом деле, все нормально, когда я пишу код, независимо от того, что это ошибка или что-то в этом роде. Тем не менее, это беспокоит меня, когда я использую это с раскадровкой. Я не могу изменить WKUserContentController
после создания раскадровки WKWebView