https://velog.io/@app_shawn/RxSwift-로그인-시스템#2-mvvm-무시-rxswift

반응형 프로그래밍으로 로그인 화면을 만들어보자.

이 화면을 구현해보자.

Email은 "@" 와 "." 이 들어가있어야 빨간색 점이 사라지며 Valid 되고, password는 총 6자 이상이어야 Valid 되며 빨간 점이 사라진다.

그리고 Email, Password 둘다 Valid 되어 빨간점이 없어야 LogIn 버튼이 활성화 Enable 된다.

1. RxSwift 없이

내가 만약 RxSwift를 알지 못했더라면, 일단 ViewController 에 TextFieldDelegate를 확장해준 후,

아래와 같이 textFieldDidEndEditing 에서 처리를 해줄 것 같다.

Delegate 또한 ReactiveX 와 같이 어느정도 실시간 데이터 처리를 해줄 수 있기 때문. 그렇다면 LoginButton 의 Enabled 여부는 어떻게 해줄까?

역시, textFieldDidEndEditing 안에 조건을 걸어 Email, Password 둘다 Valid 하다면 enable 해주면 된다.

Delegate을 걸어주는 것은 항상 잊지 말자!

이렇게 하면 위처럼 어느정도 로그인이 구현되었음을 알 수 있다.

하지만, Reactive를 사용하지 않고 작성한