【发布时间】:2021-05-18 10:41:56
【问题描述】:
如果用户快速调用 api,我会尝试取消对 api 请求,那么只有最新的 api 应该返回结果,所有以前的请求都应该被丢弃,但这不起作用任何知道解决方案的人请帮助谢谢
class CartViewModel(val store: Account) : BaseViewModel() {
private var requestCalculation:工作? = 空
有趣的重新计算(){
requestCalculation.let {
if (it != null) {
if (it.isActive) {
requestCalculation!!.cancel()
}
}
}
requestCalculation = viewModelScope.launch(Dispatchers.IO) {
isLoading.postValue(true)
try {
val order = CCOrderManager.shared.calculateTaxesAndApplyRewards(store.id)
refreshOrder()
} catch (e: Exception) {
exception.postValue(e.localizedMessage ?: e.toString())
}
}
}
}
【问题讨论】:
标签: android api kotlin mvvm viewmodel