Nenhuma Descrição

MessageViewController.swift 2.1KB

    // // MessageViewController.swift // Paiai_iOS // // Created by FFIB on 2018/6/14. // Copyright © 2018 FFIB. All rights reserved. // import UIKit import RxSwift import PaiaiUIKit import PaiaiDataKit final class MessageViewController: UIViewController { @IBOutlet weak var sysUnreadTip: UIView! @IBOutlet weak var thumbupUnreadTip: UIView! @IBOutlet weak var commentUnreadTip: UIView! @IBOutlet weak var sysBtn: UIButton! @IBOutlet weak var thumbupBtn: UIButton! @IBOutlet weak var commentBtn: UIButton! var viewModel: MessageViewModel! var userInfoViewModel: UserInfoViewModel! private var disposeBag = DisposeBag() override func viewDidLoad() { super.viewDidLoad() binding() } override func didMove(toParent parent: UIViewController?) { self.viewModel.reload() } } extension MessageViewController { func binding() { bindInteraction() bindViewModelToTipView() bindUerInfoViewModelToView() } func bindInteraction() { sysBtn.rx.tap.bind(to: viewModel.sysBtnTapped).disposed(by: disposeBag) thumbupBtn.rx.tap.bind(to: viewModel.thumbupBtnTapped).disposed(by: disposeBag) commentBtn.rx.tap.bind(to: viewModel.commentBtnTapped).disposed(by: disposeBag) } func bindViewModelToTipView() { viewModel.sysReadedTip.bind(to: sysUnreadTip.rx.isHidden).disposed(by: disposeBag) viewModel.commentReadedTip.bind(to: commentUnreadTip.rx.isHidden).disposed(by: disposeBag) viewModel.thumbupReadedTip.bind(to: thumbupUnreadTip.rx.isHidden).disposed(by: disposeBag) } func bindUerInfoViewModelToView() { userInfoViewModel.isLoggedIn .asDriver(onErrorJustReturn: ()) .drive(onNext: {[unowned self] (_) in self.viewModel.clear() self.viewModel.reload() }).disposed(by: disposeBag) } } extension MessageViewController: Storyboarded { static func instantiate() -> MessageViewController { return UIStoryboard.message.instantiateViewController(type: MessageViewController.self) } }