使用 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.