订阅发布者时触发最后一个值?
Fire last value when subscribing to publisher?
我有一个 AnyPublisher
属性 可以发出值。当有人订阅它时,有没有办法立即发出最后一个值并让它从那里监听未来的值?
你应该为此使用 CurrentValueSubject
并将其擦除为 AnyPublisher
let publisher = CurrentValueSubject<Int, Never>(1).eraseToAnyPublisher()
let c = publisher.sink(receiveValue: { int in
print(int)
})
上面的代码会立即打印 1
因为那是 CurrentValueSubject
.
的当前值
我有一个 AnyPublisher
属性 可以发出值。当有人订阅它时,有没有办法立即发出最后一个值并让它从那里监听未来的值?
你应该为此使用 CurrentValueSubject
并将其擦除为 AnyPublisher
let publisher = CurrentValueSubject<Int, Never>(1).eraseToAnyPublisher()
let c = publisher.sink(receiveValue: { int in
print(int)
})
上面的代码会立即打印 1
因为那是 CurrentValueSubject
.