![](/img/trans.png)
[英]How to open a page view controller in my iOS app only the first time the app runs?
[英]Observable<String?> runs only first time
我的结构
internal struct KeychainManager {
static private(set) var accessToken: String? = nil
}
我的用户界面绑定代码,
override func viewDidLoad() {
super.viewDidLoad()
let observableToken = Observable.just(KeychainManager.accessToken)
observableToken
.debug()
.map { $0 == nil }
.bind(to: authenticateButton.rx.isEnabled)
.disposed(by: disposeBag)
}
当我打开应用程序时,可以看到authenticateButton
已启用,但是当我进行API调用时,在将令牌成功保存到KeychainManager.accessToken
, authenticateButton
仍然保持启用状态。 为什么?
这是怎么了
任何建议都会有所帮助。
. just
. just
需要一个参数,并且将其作为.next
,然后发送.completed
后右.next
。 这意味着.just
只调用一次。 但是,您实际上需要观察accessToken
值的每一次更改。 有两种方法可以实现:
*Subject
任何一个。 在这种情况下,设置accessToken
后,您应该手动调用subject.onNext(accessToken)
(发送accessToken
更改的发送事件)并在控制器中处理此subject
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.