Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
📌 What is the PR?
🪄 Changes
🌐 Common Changes
🔥 PR Point
탭뷰를 담당하는 Feature의 State는 Struct가 아닌 enum 타입으로 관리됩니다.
각 case는 표시될 화면의 State를 가지며, Reduce에서 ifCaseLet을 통해 리듀서를 주입받습니다.
Action의 하위 enum으로 분리한 SubFeatureAction은 하위 화면에서 발생한 Action을 지칭하며, delegate와 동일한 역할을 수행합니다.
setNavigating Action은 RoutingScreen enum을 연관값으로 갖습니다.
이는 본 Reducer를 포함한 상위 Reducer에서 setNavigating(let screen)을 감시하고, 각 화면 분기처리를 진행시키기 위함입니다.
하위 화면에서는 다음 화면을 직접 참조하여 넘기는 것이 아니라, RoutingScreen enum-case를 통해 목적지만 명시합니다. 상위 화면에서는 해당 case를 받아 적절한 화면 처리를 진행합니다.
-> 다음 PR에서 확인하실 수 있습니다.
📸 Screenshot
🙆🏻 To Reviewers
💭 Related Issues