优化
This commit is contained in:
@@ -10,6 +10,7 @@ import androidx.lifecycle.MutableLiveData
|
||||
import io.legado.app.R
|
||||
import io.legado.app.base.BaseDialogFragment
|
||||
import io.legado.app.base.BaseViewModel
|
||||
import io.legado.app.constant.AppLog
|
||||
import io.legado.app.data.appDb
|
||||
import io.legado.app.data.entities.Book
|
||||
import io.legado.app.databinding.DialogAddToBookshelfBinding
|
||||
@@ -54,6 +55,9 @@ class AddToBookshelfDialog() : BaseDialogFragment(R.layout.dialog_add_to_bookshe
|
||||
viewModel.loadStateLiveData.observe(this) {
|
||||
//todo
|
||||
}
|
||||
viewModel.loadErrorLiveData.observe(this) {
|
||||
//todo
|
||||
}
|
||||
viewModel.load(bookUrl) {
|
||||
//todo
|
||||
}
|
||||
@@ -62,6 +66,7 @@ class AddToBookshelfDialog() : BaseDialogFragment(R.layout.dialog_add_to_bookshe
|
||||
class ViewModel(application: Application) : BaseViewModel(application) {
|
||||
|
||||
val loadStateLiveData = MutableLiveData<Boolean>()
|
||||
val loadErrorLiveData = MutableLiveData<String>()
|
||||
|
||||
fun load(bookUrl: String, success: (book: Book) -> Unit) {
|
||||
execute {
|
||||
@@ -90,6 +95,9 @@ class AddToBookshelfDialog() : BaseDialogFragment(R.layout.dialog_add_to_bookshe
|
||||
book.order = appDb.bookDao.minOrder - 1
|
||||
return@execute book
|
||||
} ?: throw NoStackTraceException("未找到匹配书源")
|
||||
}.onError {
|
||||
AppLog.put("添加书籍 ${bookUrl} 出错", it)
|
||||
loadErrorLiveData.postValue(it.localizedMessage)
|
||||
}.onSuccess {
|
||||
success.invoke(it)
|
||||
}.onStart {
|
||||
|
||||
Reference in New Issue
Block a user