CurrentValueSubject
์ ๋ค๋ฆญ ํด๋์ค | ํ๋์ ๊ฐ์ ๊ฐ์ธ๊ณ ๊ฐ์ด ๋ณํํ ๋๋ง๋ค ์๋ก์ด ์์๋ฅผ ๋ด๋ Subject
PassthroughSubject
์๋ ๋ค๋ฅด๊ฒ ์ด๊ธฐ๊ฐ์ ๊ฐ์ง๋ฉฐ, ๊ฐ์ฅ ์ต๊ทผ์ ๋ฐํ๋ ์์์ ๋ํ ๋ฒํผ๋ฅผ ์ ์งํ๋ค.
๋ ๊ฐ์ ์ ๋ค๋ฆญ ํ์
์ ๊ฐ์ง๋ค. ํ๋๋ ๊ฐ์ ํ์
์ ๋ํ๋ด๋ฉฐ, ๋ค๋ฅธ ํ๋๋ ์๋ฌ์ ํ์
์ ๋ํ๋ธ๋ค. ์๋ฌ์ ํ์
์ Error
ํ๋กํ ์ฝ์ ์ฑํํด์ผ ํ๋ค.
์ด๋์ ๋ผ์ด์ ์ ๋ฐํํ ์ด๊ธฐ๊ฐ์ ๋๊ฒจ์ฃผ์ด ์ธ์คํด์ค๋ฅผ ์์ฑํ๋ค.
value
ํ๋กํผํฐ๋ฅผ ํตํ์ฌ ํด๋น Subject๊ฐ ๊ฐ์ผ ๊ฐ์ ์ ๊ทผํ ์ ์๋ค.
์ด๊ธฐ๊ฐ์ ์ค์ ํ์์ผ๋ฏ๋ก subject
๋ฅผ ๊ตฌ๋
ํ ์๊ฐ์ ๊ฐ์ ๋ฐ์ ๊ฒ์ ๋ํ ํด๋ก์ ๊ฐ ์คํ๋๋ค.
์ดํ subject.send(Void())
๋ฅผ ํธ์ถํ์ฌ Subject์ ๊ฐ์ ์ ๋ฌํ์์ผ๋ฏ๋ก ๊ฐ์ ๋ฐ์ ๊ฒ์ ๋ํ ํด๋ก์ ๊ฐ ํ ๋ฒ ๋ ์คํ๋๋ค.
RxSwift
BehaviorSubject
๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํํ ์ ์๋ค.
onNext(_:)
๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ Subject์ ๊ฐ์ ์ ๋ฌํ๋ค.
ReactiveSwift
MutableProperty
๋ฅผ ์ฌ์ฉํ๊ณ producer
ํ๋กํผํฐ๋ฅผ ํตํด SignalProducer๋ฅผ ๋ง๋ค์ด ๊ตฌํํ ์ ์๋ค.
value
ํ๋กํผํฐ์ ๊ฐ์ ํ ๋นํ์ฌ Property์ ๊ฐ์ ์ ๋ฌํ๋ค.
MutableProperty
๋ก๋ถํฐ signal
ํ๋กํผํฐ๋ฅผ ํตํด Signal์ ๋ง๋ค์ด ์ฌ์ฉํ๋ค๋ฉด, MutableProperty
์ ์ด๊ธฐ๊ฐ์ด ํ๋ฅด๊ฒ ๋์ง ์์ผ๋ฏ๋ก CurrentValueSubject
์ ๋์์ ๊ตฌํํ ์ ์๋ค.
์ค์ฝํ๋ฅผ ๋ฒ์ด๋ ๋ property
๊ฐ ํด์ ๋์ด SignalProducer๋ ์ข
๋ฃํ๋ ๋ชจ์ต์ ๋ณด์ฌ์ค๋ค.
์ฐธ๊ณ
Last updated
Was this helpful?