【发布时间】:2021-09-07 21:41:38
【问题描述】:
This 的问题给了我一个大概的想法,但我仍在苦苦挣扎。
我的片段 -
// Reset email sent observer
viewModel.isEmailSent.observe(viewLifecycleOwner, { flag ->
onResetMailSent(flag)
})
我的视图模型 -
val isMailSent: MutableLiveData<Boolean> = MutableLiveData(false)
isEmailSent = liveData {
emit(firebaseAuthRepo.sendPasswordResetMail(emailId))
}
我的仓库 -
suspend fun sendPasswordResetMail(emailId: String): Boolean {
firebaseAuth?.sendPasswordResetEmail(emailId)
?.addOnCompleteListener {
if (it.isSuccessful) { }
}
?.addOnFailureListener {
}
}
问题-
-
如何通知视图模型 repo 的“addOnCompleteListener”或“addOnFailureListener”已被调用?我正在考虑返回一个布尔标志,但似乎我无法在侦听器中放置“返回”语句。
-
IDE 说 'suspend' 修饰符是多余的。这是为什么呢?
【问题讨论】:
标签: android kotlin-coroutines android-architecture-components