Я использую архитектуру mvvm в своем приложении, это мой код:
class ProductRepository : BaseRepository() {
private val mutableLiveData = MutableLiveData<ProductsModel>()
fun getProducts(catId: String): MutableLiveData<ProductsModel> {
if (internetAvailable) {
scope.launch {
val request = api.getProducts(catId)
withContext(Dispatchers.Main) {
try {
val response = request.await()
mutableLiveData.value = response
} catch (e: HttpException) {
// Log exception //
Log.v("this", e.message);
} catch (e: Throwable) {
// Log error //)
Log.v("this", e.message);
}
}
}
}
return mutableLiveData
}
}
хранилище возвращает MutableLiveData по значению ProductsModel. Это мой класс viewModel:
class ProductsViewModel :ViewModel(){
val repository=ProductRepository()
private val _products=MutableLiveData<ProductsModel>()
val products:LiveData<ProductsModel>
get()=_products
fun getProducts(catId:String){
_products.value=repository.getProducts(catId)
}
}
это ошибка:
Я не понимаю эту ошибку, как я могу ее исправить? почему он говорит мне, что тип не соответствует действительности?