[英]Binding @Published property of parent view's viewModel to @Published property of child view's viewModel: SwiftUI
[英]SwiftUI: ViewModel string to binding child view data
我有這個視圖模型字符串,我想通過綁定字符串傳遞給子視圖。
struct Beginner: View {
@StateObject var vm: BeginnerViewModel = BeginnerViewModel()
var body: some View {
VStack {
ForEach(vm.posts!, id: \.id) { post in
VStack(alignment: .leading, spacing: 10) {
WebView(text: post.tweet)
.frame(width: 700, height: 400).offset(x: 140)
}
}
}
}
}
struct WebView: UIViewRepresentable {
@Binding var text: String
func makeUIView(context: Context) -> WKWebView {
return WKWebView()
}
func updateUIView(_ uiView: WKWebView, context: Context) {
uiView.loadHTMLString(text, baseURL: nil)
}
}
在 WebView(text: post.tweet) 行中,有此錯誤消息說:
Cannot convert value of type 'String' to expected argument type 'Binding<String>'
將數據傳遞給 webview 的正確方法是什么?
看來您不需要在WebView
中進行綁定,因此只需使用
struct WebView: UIViewRepresentable {
var text: String // << this !!
// ... other code
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.