重构 store 并修复多个 bug
- state.collectGallery.slice(0) → splice(0),修复收藏列表数据残留 bug
- action 中 state 引用改为 context.state,遵循 Vuex 规范
- 修复 _searchLocalByLink 中 gid 判空条件(null → undefined)
- 修复 deleteTask splice 后索引跳过下一个元素
- 简化 getShortname 用正则替代繁琐的手动遍历
- 移除 loadWeekUsedAmount 冗余的成功提示弹窗
- 添加 Axios 全局错误拦截器,统一处理网络请求失败
- websocket 初始值 {} → null,修正类型
- resetUndone 硬编码授权码改为从 state 获取
- computed 移除副作用,改用 watch 实现
- HentaiSearch 加载指示器 DOM 操作改为响应式 v-show
- 提取重复的 validateLink 到共享工具函数
- OnlineReader 全量 watch(store.state) → 精准监听 isReading
This commit is contained in:
+10
-4
@@ -96,7 +96,7 @@
|
||||
|
||||
<script setup>
|
||||
import store from "../store";
|
||||
import {computed, ref} from "vue";
|
||||
import {computed, ref, watch} from "vue";
|
||||
import OnlineReader from "./OnlineReader.vue";
|
||||
|
||||
//输入
|
||||
@@ -133,18 +133,24 @@ let min = computed(() => {
|
||||
return store.getters.min
|
||||
})
|
||||
let max = computed(() => {
|
||||
if(targetPage.value > store.getters.max)
|
||||
store.commit("_changePage", store.getters.max)
|
||||
return store.getters.max
|
||||
})
|
||||
let page = computed(() => {
|
||||
targetPage.value = store.state.page
|
||||
return store.state.page
|
||||
})
|
||||
let isLion = computed(() => {
|
||||
return store.state.userId === 3
|
||||
})
|
||||
|
||||
// 同步 store.page → local targetPage,并在 page 超出 max 时修正
|
||||
watch(page, (newPage) => {
|
||||
targetPage.value = newPage
|
||||
})
|
||||
watch(max, (newMax) => {
|
||||
if(targetPage.value > newMax)
|
||||
store.commit("_changePage", newMax)
|
||||
})
|
||||
|
||||
let emptyText = computed(() => {
|
||||
let action = category.value === 'myDownload' ? '下载': '收藏'
|
||||
return '您未' + action + "过"
|
||||
|
||||
Reference in New Issue
Block a user