Flow가 받은 값을 데이터로 변환하기 위해 Mutable LiveData로 변환
4
package sobaya.tools.flow_to_mutablelivedata
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.firstOrNull
import kotlinx.coroutines.launch
fun <T> ViewModel.flowToMutableLiveData(flow: Flow<T>): MutableLiveData<T> {
val liveData = MutableLiveData<T>()
viewModelScope.launch {
liveData.postValue(flow.firstOrNull())
}
return liveData
}
API에서 받은 플로우 콘텐츠를 화면과 결합할 때 사용합니다.사용법
4
private val request = repository.getRepo("sobaya-0141")
val test = flowToMutableLiveData(request.map { it.body()?.getOrNull(0)?.name })
화면과 데이터로 테스트를 연결한다.
Reference
이 문제에 관하여(Flow가 받은 값을 데이터로 변환하기 위해 Mutable LiveData로 변환), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/sobya/articles/d79cf151735951텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)