Avatar
Avatar
koher
waiwaiの途中だけど・・・ さっきの Publisher の購読、 extension なしだとこれでいける気がする。 override func viewDidLoad() { super.viewDidLoad() let task = Task { [weak self] in guard let state = self?.state else { return } for await _ in state.objectWillChange.values { guard let self = self else { return } // state を View に反映する処理 self.nameLabel.text = state.user?.name } } cancellables.insert(.init { task.cancel() }) } (edited)
これ、 will なので state.objectWillChange.receive(on: DispatchQueue.main).values にするなどしないと更新された値が取れませんでした。