[英]Expected non-nullable value for MutableLiveData
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")
}
我在_users.value = users()
上收到以下错误
预期的不可为空的值。 检查信息:此检查确保 LiveData 值在明确声明为不可为空时不是 null。
我正在使用生命周期版本2.3.1
。 问题似乎在于暂停 function users()。 如果我删除挂起修饰符,它工作正常。
只需使用private val _users:MutableLiveData<List<User>> = MutableLiveData()
而不是private val _users = MutableLiveData<List<User>>()
。
试试this._users.value = users()
。 在前面添加this
对我有用。 不知道为什么。 在您的情况下,您可能需要this@yourModel._users.value = users()
因为您在 viewModelScope 中调用它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.