-
[iOS_개발자 단어장] MVVM 아키텍쳐 변경Project/[release]iOS - Bitnote 2020. 7. 25. 11:40
노트 입력 ViewController 에서 뷰모델, 비지니스 로직에 대한 부분을 분리
RxSwift 로 뷰와 뷰모델을 바인딩해서, 뷰모델이 변경되었을때 뷰가 자동 갱신되도록 변경
class NoteDetailViewModel { private let groupListModel = GroupListViewModel.sharedInstance // Subject: Observable + 외부에서 값 통제 가능 var noteInputItemsOb = BehaviorRelay<[NoteInputType]>(value: []) // Input let titleText = BehaviorSubject(value: "") // Output let isTitleValid = BehaviorSubject(value: false) init(){ _ = titleText.distinctUntilChanged() .map(checkTitleValid) .bind(to: isTitleValid) } private func checkTitleValid(_ title: String) -> Bool { return title != "" } }
'Project > [release]iOS - Bitnote' 카테고리의 다른 글
[iOS_개발자 단어장] 그리기 뷰 Sketch 적용 (0) 2020.07.29 [iOS_개발자 단어장] 디자인 적용 (0) 2020.07.28 [iOS_개발자 단어장] 노트 수정, 삭제, 설정메뉴 뷰 (0) 2020.07.24 [iOS_개발자 단어장] 뷰 모델 변경, 노트 생성 (0) 2020.07.23 [iOS_개발자 단어장] JIRA 로 작업사항 관리하기 (0) 2020.07.21