Михаил Капелько 10 months ago
parent
commit
c3265592a7
4 changed files with 31 additions and 5 deletions
  1. +2
    -0
      Modules/BusX/BusUI/src/BusUI.TextField.swift
  2. +11
    -3
      Modules/MeetupIdX/src/MeetupId.TV.swift
  3. +17
    -0
      Modules/MeetupIdX/src/MeetupId.TVM.swift
  4. +1
    -2
      src/App.swift

+ 2
- 0
Modules/BusX/BusUI/src/BusUI.TextField.swift View File

@@ -16,6 +16,8 @@ extension BusUI {
) {
self.textApp = textApp
self.textUI = textUI
/**/print("ИГР BusUTF(\(Unmanaged.passUnretained(self).toOpaque())).init textA/textU: '\(textApp)'/'\(textUI)'")

$id
.sink { [weak self] v in self?.setup(v) }


+ 11
- 3
Modules/MeetupIdX/src/MeetupId.TV.swift View File

@@ -3,17 +3,25 @@ import SwiftUI

extension MeetupId {
public struct TV: View {
@StateObject var textField = BusUI.TextField(K.testTextApp, K.testTextUI)
let id: String
@StateObject var vm = TVM()
public init(_ id: String) {
textField.id = id
self.id = id
}
public var body: some View {
TextField("TV", value: $textField.v, formatter: BusUI.TextFieldSource())
TextField("TV", value: vm.$textField.v, formatter: BusUI.TextFieldSource())
.padding(8)
.border(Color.blue)
.animation(.easeInOut(duration: 0.3))
.onAppear {
vm.setup(id)
}
.onChange(of: id) { newValue in
vm.setup(newValue)
}
}

}
}

+ 17
- 0
Modules/MeetupIdX/src/MeetupId.TVM.swift View File

@@ -0,0 +1,17 @@
import BusX

extension MeetupId {
public final class VM: ObservableObject {
let textField = BusUI.TextField(K.testTextApp, K.testTextUI)
@Published public var id: String?
var subscriptions = [AnyCancellable]()

public init() { }

public setup(_ id: String) {
/**/print("ИГР MeetupIV(\(Unmanaged.passUnretained(self).toOpaque())).setup id: '\(id)'")
textField.id = id
}
}
}

+ 1
- 2
src/App.swift View File

@@ -4,8 +4,7 @@ import UIKit

struct Content: View {
var body: some View {
MeetupId.V()
Divider()
//MeetupId.V()
MeetupId.TV("uuid-1")
Divider()
MeetupId.TV("uuid-2")


Loading…
Cancel
Save