#kotlin #mvvm #retrofit2 #viewmodel
Вопрос:
Я пытаюсь получить данные с сервера, используя сопрограммы и модернизацию2.Я использую шаблоны проектирования MVVM, в которых я создал модель представления, в которой я получаю данные с сервера, но в то время setValue()
, когда я вижу ответ на список, я получаю ошибку красной строки.
Ниже приведен мой код:
RetrofitClient.kt
class RetrofitClient {
companion object{
val baseurl = "http://192.168.43.110:3000"
fun getRetrofitClient(): Retrofit{
return Retrofit.Builder()
.baseUrl(baseurl)
.addConverterFactory(GsonConverterFactory.create())
.build()
}
}
}
ApiService.kt
interface ApiService {
@GET("/")
suspend fun getUsers(): Response<List<User>>
}
Домашняя модель.kt
class HomeViewModel: ViewModel() {
lateinit var userList:MutableLiveData<User>
init {
userList = MutableLiveData()
}
fun getAllUsers():MutableLiveData<User>{
return userList
}
fun apiCall(){
viewModelScope.launch(Dispatchers.IO){
val retrofit = RetrofitClient.getRetrofitClient().create(ApiService::class.java)
val response = retrofit.getUsers()
if(response.isSuccessful){
userList.value = response
}
}
}
}
Я подхожу к красной черте response
в userList.value = response
очереди.
Кто-нибудь, дайте мне знать, что я делаю не так.
Комментарии:
1. Пожалуйста, добавьте, что говорится в ошибке