Android 用于存储库到ViewModel通信的密封类
基于Florina Muntenescu的观点,我有两个问题: 问题1:在以下情况下,考虑到Android 用于存储库到ViewModel通信的密封类,android,kotlin,sealed-class,Android,Kotlin,Sealed Class,基于Florina Muntenescu的观点,我有两个问题: 问题1:在以下情况下,考虑到响应响应结果: 我如何解决这个问题? 但这是有效的: when (result: Result<Int>) { ... is SomeApiResult.Error -> result.exception.message } 在我的ViewModel中,我不会查询Error.Generic 相反,我将使用如上所示的is someapireult.Error(如else->“
响应
响应结果:
我如何解决这个问题?但这是有效的:
when (result: Result<Int>) {
...
is SomeApiResult.Error -> result.exception.message
}
在我的ViewModel
中,我不会查询Error.Generic
相反,我将使用如上所示的
is someapireult.Error
(如else->
“其他错误”)。这条路对吗
when (result: SomeApiResult) {
...
is SomeApiResult.Error.Error1,
is SomeApiResult.Error.Error2 -> {
// it will fail with "Unresolved reference: exception"
result.exception
}
is SomeApiResult.Error.Error3 -> {
...
}
}
when (result: Result<Int>) {
...
is SomeApiResult.Error -> result.exception.message
}
is Result.Error ->
when (result.exception) {
is Error1 -> SomeApiResult.Error.Error1(result.exception)
is Error2 -> SomeApiResult.Error.Error2(result.exception)
...
else -> SomeApiResult.Error.Generic(result.exception)
}