From c9af72dc85e3e75435dd13e766dfba5c4a967285 Mon Sep 17 00:00:00 2001 From: chuzhongzai Date: Wed, 7 Oct 2026 16:15:24 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E4=B8=8B=E8=BD=BD=E7=AB=AF?= =?UTF-8?q?=E6=94=B9=E7=94=A8=E5=85=B1=E4=BA=AB=E6=A0=B8=E5=BF=83=E5=8C=85?= =?UTF-8?q?=EF=BC=8C=E4=B8=8E=E6=A1=8C=E9=9D=A2=E7=AB=AF=E5=85=B1=E7=94=A8?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E4=B8=9A=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - store 改由 createGalleryStore(variant:"mobile") 生成,保留“继续加载”交互 - 与桌面端共用同一份 API 解码、任务规范化、派生与排序实现 - 取消收藏不再因本地找不到 gid 抛 TypeError - 删除重复的 taskSocket/progressiveImages/validate/thumbnail,改从共享包导入 - 远端搜索改用共享 fetchGalleries,翻页按游标转发 - main.js 按需注册 Element Plus,入口 JS 由约 1.13MB 降到约 486KB - 依赖新增 file:../lionwebsite-frontend-shared 测试:12 项通过;构建成功,入口仍为 /asserts/mobile/index.js|css。 --- package-lock.json | 8 + package.json | 3 +- src/components/OnlineReader.vue | 2 +- src/components/SearchView.vue | 44 +-- src/components/TaskDetailSheet.vue | 2 +- src/components/TaskView.vue | 2 +- src/main.js | 12 +- src/store/index.js | 612 +---------------------------- src/utils/progressiveImages.js | 23 -- src/utils/taskSocket.js | 76 ---- src/utils/thumbnail.js | 27 -- src/utils/validate.js | 8 - tests/progressiveImages.test.mjs | 33 -- tests/search.test.mjs | 38 ++ tests/store.test.mjs | 154 ++++---- tests/taskSocket.test.mjs | 63 --- tests/thumbnail.test.mjs | 47 --- 17 files changed, 160 insertions(+), 994 deletions(-) delete mode 100644 src/utils/progressiveImages.js delete mode 100644 src/utils/taskSocket.js delete mode 100644 src/utils/thumbnail.js delete mode 100644 src/utils/validate.js delete mode 100644 tests/progressiveImages.test.mjs create mode 100644 tests/search.test.mjs delete mode 100644 tests/taskSocket.test.mjs delete mode 100644 tests/thumbnail.test.mjs diff --git a/package-lock.json b/package-lock.json index 82adb3d..ecb3803 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,6 +10,7 @@ "dependencies": { "axios": "^1.0.0", "element-plus": "^2.2.15", + "lionwebsite-frontend-shared": "file:../lionwebsite-frontend-shared", "qs": "^6.11.0", "vue": "^3.2.37", "vuex": "^4.0.2" @@ -19,6 +20,9 @@ "vite": "8.3.0" } }, + "../lionwebsite-frontend-shared": { + "version": "1.0.0" + }, "node_modules/@babel/helper-string-parser": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", @@ -1281,6 +1285,10 @@ "url": "https://opencollective.com/parcel" } }, + "node_modules/lionwebsite-frontend-shared": { + "resolved": "../lionwebsite-frontend-shared", + "link": true + }, "node_modules/lodash": { "version": "4.18.1", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz", diff --git a/package.json b/package.json index 49b397b..0abe1ba 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,8 @@ "element-plus": "^2.2.15", "qs": "^6.11.0", "vue": "^3.2.37", - "vuex": "^4.0.2" + "vuex": "^4.0.2", + "lionwebsite-frontend-shared": "file:../lionwebsite-frontend-shared" }, "devDependencies": { "@vitejs/plugin-vue": "6.0.9", diff --git a/src/components/OnlineReader.vue b/src/components/OnlineReader.vue index f0c9725..dd2c573 100644 --- a/src/components/OnlineReader.vue +++ b/src/components/OnlineReader.vue @@ -1,6 +1,6 @@