在哪里可以找到liveData构建块?

时间:2019-05-23 19:08:06

标签: kotlin kotlin-android-extensions kotlin-coroutines

https://developer.android.com/topic/libraries/architecture/coroutines

Android coroutinesliveData文档指出,如果我们想在实时数据功能内执行异步操作,则可以使用liveData构建器功能

val user: LiveData<User> = liveData {
    val data = database.loadUser() // loadUser is a suspend function.
    emit(data)
}
val user: LiveData<Result> = liveData {
    emit(Result.loading())
    try {
        emit(Result.success(fetchUser())
    } catch(ioException: Exception) {
        emit(Result.error(ioException))
    }
}

我尝试安装lifecycle-viewmodel-ktx库,但找不到此块。

它在哪里?

2 个答案:

答案 0 :(得分:1)

尝试:

/* Used for remove the gray dot square in whole pp*/
::-webkit-scrollbar, *::-webkit-scrollbar {
 display: none;
}

该函数位于此处: https://android.googlesource.com/platform/frameworks/support/+/refs/heads/androidx-master-dev/lifecycle/livedata/ktx/src/main/java/androidx/lifecycle/CoroutineLiveData.kt

并且(当前)定义为:

implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.2.0-alpha01'

答案 1 :(得分:0)

我也有这个问题,我建议只添加他们建议的依赖项here

问题是Google的协同程序Android文档并未明确提及这些ktx扩展(如您在链接中所见),对于获得{{1 1}}。

不要误以为您可以只使用较低版本,即liveData,而应按照文档中明确指定的名称使用它,即像LiveDataScope中那样使用alpha / RC版本。