title: SwiftUI ViewModel published property and binding
body: <p>My question is probably the result of a misunderstanding but I can't figure it out, so here it is:</p>
  
  <p>When using a component like a TextField or any other component requiring a binding as input</p>
  
  <pre><code>TextField(title: StringProtocol, text: Binding&lt;String&gt;)
  </code></pre>
  
  <p>And a View with a ViewModel, I naturally thought that I could simply pass my ViewModel <code>@Published</code> properties as binding :</p>
  
  <pre><code>class MyViewModel: ObservableObject { 
       @Published var title: String
       @Published var text: String
  }
  
  // Now in my view
  var body: some View {
      TextField(title: myViewModel.title, text: myViewModel.$text)
  }
  </code></pre>
  
  <p>But I obviously can't since the publisher cannot act as binding. From my understanding, only a <code>@State</code> property can act like that but shouldn't all the <code>@State</code> properties live only in the View and not in the view model? Or could I do something like that :</p>
  
  <pre><code>class MyViewModel: ObservableObject { 
       @Published var title: String
       @State var text: String
  }
  </code></pre>
  
  <p>And if I can't, how can I transfer the information to my ViewModel when my text is updated?</p>