繁体   English   中英

Android体系结构组件室ViewModel CompleteableFormAction

[英]Android Architecture Components Room ViewModel CompleteableFormAction

所以我想我会在一个较小的副项目上尝试Room 我遵循了Florina Muntenescu的示例项目: android-architecture-components

我特别注意以下类: UserActivity.ktUserViewModel.ktUserDao.kt

UserViewModel#updateUserName()返回Completable ,并且必须订阅返回onCompleteonError

当我尝试将等效的viewModel.updateUserName(userName)放入RxBindings链中时。 如果我正常订阅它,那么我将获得Disposable! 进入onNext ,值为"DISPOSED"在最后.subscribe

问题是这不会发出错误 ,因此永远不知道是否存在问题

我如何修改下面的代码,以便最终的.subscribe返回正确的事件?

RxTextView.textChanges(editText)
            .debounce(250L, TimeUnit.MILLISECONDS, schedulers.main)
            .subscribeOn(schedulers.main)
            .observeOn(schedulers.disk)
            .map({ name ->
                viewModel.updateUserName(name)
                        .subscribe(
                                { Timber.d(“Success”) },
                                { error -> Timber.d(error, “something went wrong”)) })                    
            })
            .observeOn(schedulers.main)
            .subscribe(
                    { Timber.d("name changed $it}") },
                    { Timber.e(it, "name error") })

提前致谢

M.

转这个

.map({ name ->
       viewModel.updateUserName(name)
                 .subscribe(
                  { Timber.d(“Success”) },
                 { error -> Timber.d(error, “something went wrong”)) })                    
            })

对此

.flatMapCompletable name ->
           viewModel.updateUserName(name))                    

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM