使用 WKWebView 在 swiftui 中执行 javascript 确认
Execute javascript confirm in swiftui using WKWebView
我目前正在尝试将 rails 应用程序包装在网络视图中,以便获得本机推送通知功能。我在尝试弄清楚如何在使用 swiftui 时让 javascript 确认和警报正常工作时遇到了麻烦。
这是我目前得到的结果:
import SwiftUI
import WebKit
struct ContentView: View {
var body: some View {
WebView().edgesIgnoringSafeArea(.all)
}
}
struct WebView: UIViewRepresentable {
func makeUIView(context: Context) -> WKWebView {
let webView = WKWebView()
return webView
}
func updateUIView(_ webView: WKWebView, context: Context) {
let appUrl = "http://localhost:3000"
if let url = URL(string: appUrl) {
let request = URLRequest(url: url)
webView.load(request)
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
这可以加载应用程序,除了提醒和确认对话框外,一切似乎都正常。
我最终选择了 https://github.com/lazaronixon/react-native-turbolinks。至少现在我可以只使用 javascript 而不是学习 swift 和 kotlin/java.
我目前正在尝试将 rails 应用程序包装在网络视图中,以便获得本机推送通知功能。我在尝试弄清楚如何在使用 swiftui 时让 javascript 确认和警报正常工作时遇到了麻烦。
这是我目前得到的结果:
import SwiftUI
import WebKit
struct ContentView: View {
var body: some View {
WebView().edgesIgnoringSafeArea(.all)
}
}
struct WebView: UIViewRepresentable {
func makeUIView(context: Context) -> WKWebView {
let webView = WKWebView()
return webView
}
func updateUIView(_ webView: WKWebView, context: Context) {
let appUrl = "http://localhost:3000"
if let url = URL(string: appUrl) {
let request = URLRequest(url: url)
webView.load(request)
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
这可以加载应用程序,除了提醒和确认对话框外,一切似乎都正常。
我最终选择了 https://github.com/lazaronixon/react-native-turbolinks。至少现在我可以只使用 javascript 而不是学习 swift 和 kotlin/java.