HomeView에서 사용하던 AdBanner, HomeNavigationBar가 MainView에서도 사용되기 때문에 Onbom/Components/ 폴더에서 새로 생성했습니다
이전방식에서 HomeViewModel는 SubmitView만 사용하기 때문에 생성자를 통한 명시적 의존성 주입을 합니다. 하지만 MainViewModel(이전은 HomeViewModel)을 의존하는 뷰가 많아지면서 생성자를 통한 명시적 의존성 주입은 코드를 복잡하게 만든다는 문제가 생겼습니다. 그래서 EnvironmentObject를 사용하여 뷰 계층 구조에서 의존성을 암시적으로 공유할 수 있도록 변경하였습니다.
뷰계층
graph TB
A[MainView] --> B[HomeView]
A --> C[GuideView]
B --> D[HomeNavigationBar]
B --> E[LTCICard]
B -->|some views| SubmitView
C --> HomeNavigationBar
C --> LTCICard
HomeNavigationBar: 앱을 초기화할 때 guideview를 생성합니다
LTCICard: 신청하기 버튼을 누르면 guideview가 사라집니다
SubmitView: 신청서류를 제출하면 LTCICard의 뒷면을 보여줍니다
🔥 Pull requests
⛳️ 작업한 브랜치
158
👷 작업한 내용
🚨 참고 사항
뷰계층
HomeNavigationBar
: 앱을 초기화할 때 guideview를 생성합니다LTCICard
: 신청하기 버튼을 누르면 guideview가 사라집니다SubmitView
: 신청서류를 제출하면 LTCICard의 뒷면을 보여줍니다📸 스크린샷
신청하기 버튼을 누르고 pop 버튼을 누르면 guideView가 사라집니다