Aam*_*aul 9 android viewmodel kotlin android-livedata kotlin-null-safety
private val _users = MutableLiveData<List<User>>()
val users: LiveData<List<User>> get() = _users
fun getUsers() {
viewModelScope.launch {
_users.value = users()
}
}
suspend fun users(): List<User> {
TODO("Not implemented")
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误_users.value = users()
预期的非空值。检查信息:此检查可确保 LiveData 值在显式声明为不可空时不为空。
我正在使用生命周期版本2.3.1。问题似乎出在挂起函数 users() 上。如果我删除挂起修饰符,它就可以正常工作。
NRU*_*ANA 11
只需使用
private val _users: MutableLiveData<List<User>> = MutableLiveData()
Run Code Online (Sandbox Code Playgroud)
代替
private val _users = MutableLiveData<List<User>>()
Run Code Online (Sandbox Code Playgroud)
Ars*_*rst 11
尝试this._users.value = users()。this在前面添加对我有用。不知道为什么。在您的情况下,您可能需要,this@yourModel._users.value = users()因为您在 viewModelScope 中调用它。
| 归档时间: |
|
| 查看次数: |
3628 次 |
| 最近记录: |