SwiftlyPresent
Example
To run the example project, clone the repo, and run pod install
from the Example directory first.
Requirements
Installation
SwiftlyPresent is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'SwiftlyPresent'
How to Use
// MARK: - Single view
mainView.signUpButton.tapPublisher
.flatMap { [unowned self] _ in
return SignUpViewController.instance().presentedWithNavigation(on: self).eraseToAnyPublisher()
}.sink { [weak self] model in
guard let self = self else { return }
self.mainView.emailName.text = model.name
self.mainView.passWordName.text = model.password
}.store(in: &cancellables)
// MARK: - ChainPresent
mainView.chainButton.tapPublisher
.flatMap { [unowned self] _ in
// Emailํ๋ฉด
return SignUpEmailViewController.instance().presentedWithNavigation(on: self).eraseToAnyPublisher()
}.flatMap { promiseData in
// password ํ๋ฉด
return SignUpPassWordViewController.instance(data: promiseData).pushViewController(animated: true).eraseToAnyPublisher()
}.sink { [weak self] model in
guard let self = self else { return }
self.mainView.emailName.text = model.name
self.mainView.passWordName.text = model.password
}.store(in: &cancellables)
Author
jungseungyeo, [email protected]
License
SwiftlyPresent is available under the MIT license. See the LICENSE file for more info.