iOS: 使用 SwiftUI 在 Webview 中调用带有 2 个参数的 JS 函数
iOS: Call JS function with 2 parameters in a Webview using SwiftUI
我试图在我的 webview 中调用我的 JS 函数,它使用 evaluateJS 接受 2 个参数,但是我似乎没有点击该函数。 (它在没有参数的情况下工作,所以我认为我在 SwiftUI 端的语法错误。想知道是否有人可以提供建议。
JS函数:
function testFunction(message, ident) {
document.getElementById('index_registernow').style.display = 'none';
}
SwiftUI 端:
let token = (UserDefaults.standard.string(forKey: "Token") ?? "")
let ident = (UserDefaults.standard.string(forKey: "Ident") ?? "")
uiView.evaluateJavaScript("testFunction(\(token),\(ident))")
假设其他一切正常(例如 Token
和 Ident
的值以及您的 Javascript 函数存在),主要问题看起来您没有包装字符串在 Javascript 中的引号中:
uiView.evaluateJavaScript("testFunction(\"\(token)\",\"\(ident)\")")
我试图在我的 webview 中调用我的 JS 函数,它使用 evaluateJS 接受 2 个参数,但是我似乎没有点击该函数。 (它在没有参数的情况下工作,所以我认为我在 SwiftUI 端的语法错误。想知道是否有人可以提供建议。
JS函数:
function testFunction(message, ident) {
document.getElementById('index_registernow').style.display = 'none';
}
SwiftUI 端:
let token = (UserDefaults.standard.string(forKey: "Token") ?? "")
let ident = (UserDefaults.standard.string(forKey: "Ident") ?? "")
uiView.evaluateJavaScript("testFunction(\(token),\(ident))")
假设其他一切正常(例如 Token
和 Ident
的值以及您的 Javascript 函数存在),主要问题看起来您没有包装字符串在 Javascript 中的引号中:
uiView.evaluateJavaScript("testFunction(\"\(token)\",\"\(ident)\")")