Optional.Publisher
๊ตฌ์กฐ์ฒด | ์ต์ ๋์ด ๊ฐ์ ๊ฐ์ง๊ณ ์์ผ๋ฉด, ๊ฐ Subscriber์๊ฒ ์ ํํ ํ ๋ฒ ์ต์ ๋ ๊ฐ์ ๋ฐํํ๋ Combine Publisher
์ด๋์ ๋ผ์ด์ ๋ ํ ๊ฐ์ ์ธ์๋ฅผ ๋ฐ๋๋ค.
output
: ๊ฐ Subscriber์๊ฒ ์ ๋ฌํ ์ต์ ๋ ๊ฐ์ต์ ๋ ๊ฐ์ด nil์ด ์๋๋ผ๋ฉด ์ต์ ๋์ด ๋ฒ๊ฒจ์ง ๊ฐ์ ์ ๋ฌํ๊ณ ์ข ๋ฃํ๋ค.
์ต์ ๋ ๊ฐ์ด nil์ด๋ผ๋ฉด ๊ฐ์ ์ ๋ฌํ์ง ์๊ณ ๋์ ์ ์์ ์ผ๋ก ์ข ๋ฃํ๋ค.
// 1
Optional.Publisher(Void())
.sink(receiveCompletion: { completion in
switch completion {
case .failure:
print("Combine Optional Error")
case .finished:
print("Combine Optional Finish")
}
}, receiveValue: {
print("Combine Optional")
})
.store(in: &cancellables)
// Combine Optional
// Combine Optional Finish
// 2
Optional.Publisher(nil)
.sink(receiveCompletion: { completion in
switch completion {
case .failure:
print("Combine Optional Error")
case .finished:
print("Combine Optional Finish")
}
}, receiveValue: {
print("Combine Optional")
})
.store(in: &cancellables)
// Combine Optional Finish
1์ ์ฝ๋๋ ์ธ์๋ก nil์ด ์๋ ๋ค์ด๊ฐ์ผ๋ฏ๋ก ์ต์ ๋์ ๋ฒ๊ธด ๊ฐ์ ๋ด๊ณ ์ข ๋ฃํ๋ค.
2์ ์ฝ๋๋ ์ธ์๋ก nil์ด ๋ค์ด๊ฐ์ผ๋ฏ๋ก ๊ทธ๋๋ก ์ข ๋ฃํ๋ค.
Last updated
Was this helpful?