diff --git a/app/src/main/java/com/shuwei/dish/match/db/DbViewModel.kt b/app/src/main/java/com/shuwei/dish/match/db/DbViewModel.kt index 0540024..15bac25 100644 --- a/app/src/main/java/com/shuwei/dish/match/db/DbViewModel.kt +++ b/app/src/main/java/com/shuwei/dish/match/db/DbViewModel.kt @@ -36,7 +36,9 @@ class DbViewModel : ViewModel() { private val _cookFoodListState = MutableStateFlow?>(null) val cookFoodListState: StateFlow?> = _cookFoodListState.asStateFlow() - + fun resetCookFoodList() { + _cookFoodListState.value = null + } fun getCookFoodList( cookMode: Int, dinnerType: String = "0" diff --git a/app/src/main/java/com/shuwei/dish/match/net/NetViewModel.kt b/app/src/main/java/com/shuwei/dish/match/net/NetViewModel.kt index f264d13..7971b36 100644 --- a/app/src/main/java/com/shuwei/dish/match/net/NetViewModel.kt +++ b/app/src/main/java/com/shuwei/dish/match/net/NetViewModel.kt @@ -72,6 +72,9 @@ class NetViewModel( */ private val _samplingListState = MutableStateFlow?>>(UiState.Idle) val samplingListState: StateFlow?>> = _samplingListState.asStateFlow() + fun resetSamplingListState() { + _samplingListState.value = UiState.Idle + } /** * 查询采样数据列表 diff --git a/app/src/main/java/com/shuwei/dish/match/ui/SamplingListActivity.kt b/app/src/main/java/com/shuwei/dish/match/ui/SamplingListActivity.kt index 511632d..621f209 100644 --- a/app/src/main/java/com/shuwei/dish/match/ui/SamplingListActivity.kt +++ b/app/src/main/java/com/shuwei/dish/match/ui/SamplingListActivity.kt @@ -307,13 +307,18 @@ class SamplingListActivity : BaseActivity() { @SuppressLint("NotifyDataSetChanged") fun refreshLocalData() { showLoading() + appViewModel.resetCookFoodList() getCookFoodList() } private fun requestData(isCooking: Boolean) { if (isCooking) { + // 清除上次网络请求的残留状态 + netViewModel.resetSamplingListState() refreshLocalData() } else { + // 同理,清除本地数据残留状态 + appViewModel.resetCookFoodList() pageNo = 1 getSamplingList() }