1

Observed Objectから文字列値を抽出したい

これはサンプルコードです

import SwiftUI
import Combine


class SetViewModel : ObservableObject {
  private static let userDefaultTextKey = "textKey"
  @Published var text: String = UserDefaults.standard.string(forKey: SetViewModel.userDefaultTextKey) ?? ""
  private var canc: AnyCancellable!

  init() {
    canc = $text.debounce(for: 0.2, scheduler: DispatchQueue.main).sink { newText in
        UserDefaults.standard.set(newText, forKey: SetViewModel.userDefaultTextKey)
    }
  }

  deinit {
    canc.cancel()
  }
}


struct SettingView: View {
  @ObservedObject var viewModel = SettingViewModel()
  var body: some View {
    ZStack {
        Rectangle().foregroundColor(Color.white).edgesIgnoringSafeArea(.all).background(Color.white)
        VStack {
            TextField("test", text: $viewModel.text).textFieldStyle(BottomLineTextFieldStyle()).foregroundColor(.red)
            Text($viewModel.text) //I want to get String Value from $viewModel.text

        }
    }
  }
}

"$viewModel.text"の文字列値を使用したい。これどうやってするの?

4

2 に答える 2