From 6296ef634874fb508db6d101b38e00ee56458b6c Mon Sep 17 00:00:00 2001 From: 86152 Date: Sat, 2 Mar 2024 20:29:56 +0800 Subject: [PATCH] fix:reload --- .../main/java/com/lsp/view/ui/MainViewModel.kt | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/lsp/view/ui/MainViewModel.kt b/app/src/main/java/com/lsp/view/ui/MainViewModel.kt index 840f59a..059a39a 100644 --- a/app/src/main/java/com/lsp/view/ui/MainViewModel.kt +++ b/app/src/main/java/com/lsp/view/ui/MainViewModel.kt @@ -96,28 +96,28 @@ class MainViewModel(private val repository: PostRepository, context: Context):Vi } - private fun fetchNewPost(){ + private fun fetchNewPost() { fetchJob?.cancel() fetchJob = viewModelScope.launch(Dispatchers.IO) { _uiState.value.isRefreshing.postValue(true) try { - _postList.postValue(repository.fetchPostData( + val newPosts = repository.fetchPostData( _uiState.value.nowSearchText.value, _uiState.value.isSafe, _uiState.value.nowPage - )) - - }catch (e:NetworkErrorException){ + ) + val currentPosts = _postList.value ?: arrayListOf() + currentPosts.addAll(0,newPosts) + _postList.postValue(currentPosts) + } catch (e: NetworkErrorException) { postNewToast(e.message.toString()) } - _uiState.value.isRefreshing.postValue(false) - } - } + fun fetchPostByRefresh(){ _uiState.update { it.copy(nowPage = 1)