-
Notifications
You must be signed in to change notification settings - Fork 0
Subject
Jinwon Choi edited this page Mar 19, 2025
·
1 revision
특정 데이터 배열을 PassThroughSubject를 이용해 구독자에게 값을 전달해주고 있었다.
하지만, 이 방식은 초기 값이 존재하지 않고 새로운 값을 갱신(방출)할때만 값을 전달해주게 된다.
따라서 구독받는 부분에서 해당 배열을 미리 선언 해주고 값이 갱신될 경우 저장해 이용해줄 수 있다.
하지만 갱신 시점이 아니라 무조건 해당 값을 알아야했고, 그로인해 계속 배열을 새로 만들어 이용해주고 있었다.
이 상태로도 문제가 있는 코드는 아니었지만 더 좋은 방법을 알게되어 정리하게 되었다.
CurrentValueSubject를 이용하면 바로 현재 값을 저장하고 구독자는 언제든 그 값을 알 수 있기 때문에 따로 배열을 선언하지 않고 바로 접근해 값을 이용할 수 있었다.
struct DefaultMateListPresenterOutput: MateListPresenterOutput {
var mates = CurrentValueSubject<[Mate], Never>([])
var profileImageData = PassthroughSubject<(Int, Data?), Never>()
}
// 위에처럼 선언해두고 필요한 위치에서 아래처럼 바로 접근해 이용 가능하다.
presenter?.output.mates.valueNI, MPC
리팩토링/리디자인
테스트
Supabase
- 배현진
- 윤지성
- 최진원
- 허혜민