将 WKWebView
用作 macOS 环境的 NSViewRepresentable
和 UIKit 的 UIViewRepresentable
在框架内加载网站,可以在网页内导航,但没有 ObservedObject
struct MyWebView: View {
var body: some View {
SwiftUIWKWebView(viewModel: .init(urlString: "https://apple.com")!)
}
}
扩展 WebViewModel
,以便从 WKNavigationDelegate
获取更多操作
struct MyWebView: View {
@ObservedObject var viewModel: WebViewModel
var body: some View {
SwiftUIWKWebView(viewModel: viewModel)
}
}
struct MyWebView_Previews: PreviewProvider {
static var previews: some View {
MyWebView(viewModel: .init(urlString: "https://twitter.com/jkmazur")!)
}
}