日記
今日書いたコード
今日もガチャガチャやっていた
センサーの保存ガチャガチャ二日目 · Gurrium/Komusou@97e2651 · GitHub
感想
別のオブジェクトの@Published
なプロパティをトリガーにViewの更新を走らせるには別のオブジェクト全体もしくはそれ用のオブジェクトをObservableObject
に準拠させるしかない?それがいわゆるStateになるのかな。
これで言うと、別のオブジェクトがBluetoothManger
で、@Published
なプロパティがspeedSensor
。
final class SensorSettingViewState: ObservableObject { @Published private(set) var speedSensorName = "" private var cancellables = Set<AnyCancellable>() init() { BluetoothManager.shared.$speedSensor.sink { [weak self] peripheral in self?.speedSensorName = peripheral?.name ?? "" } .store(in: &cancellables) } }