From fcc42f1dd35e0ce06882d5cc5a24f227fbad52f5 Mon Sep 17 00:00:00 2001 From: zyronon Date: Wed, 22 Nov 2023 09:20:44 +0800 Subject: [PATCH] save --- components.d.ts | 22 ++++++++++--------- package.json | 5 +++-- pnpm-lock.yaml | 12 ++++++++++ src/App.vue | 6 ++--- src/main.ts | 3 +++ src/pages/dict/index.vue | 20 +++++++++++++++++ .../Practice => pages/practice}/Footer.vue | 0 .../Practice => pages/practice}/Options.vue | 0 .../Practice => pages/practice}/Panel.vue | 2 +- .../practice}/Statistics.vue | 2 +- .../Practice => pages/practice}/index.vue | 12 +++++----- .../practice-article/TypingArticle.vue | 8 +++---- .../practice}/practice-article/index.vue | 4 ++-- .../practice}/practice-word/Typing.vue | 0 .../practice}/practice-word/TypingWord.vue | 8 +++---- .../practice}/practice-word/index.vue | 2 +- src/router.ts | 16 ++++++++++++++ 17 files changed, 87 insertions(+), 35 deletions(-) create mode 100644 src/pages/dict/index.vue rename src/{components/Practice => pages/practice}/Footer.vue (100%) rename src/{components/Practice => pages/practice}/Options.vue (100%) rename src/{components/Practice => pages/practice}/Panel.vue (99%) rename src/{components/Practice => pages/practice}/Statistics.vue (99%) rename src/{components/Practice => pages/practice}/index.vue (93%) rename src/{components/Practice => pages/practice}/practice-article/TypingArticle.vue (99%) rename src/{components/Practice => pages/practice}/practice-article/index.vue (98%) rename src/{components/Practice => pages/practice}/practice-word/Typing.vue (100%) rename src/{components/Practice => pages/practice}/practice-word/TypingWord.vue (98%) rename src/{components/Practice => pages/practice}/practice-word/index.vue (94%) create mode 100644 src/router.ts diff --git a/components.d.ts b/components.d.ts index af5bcef8..51d9ae36 100644 --- a/components.d.ts +++ b/components.d.ts @@ -43,29 +43,31 @@ declare module 'vue' { Empty: typeof import('./src/components/Empty.vue')['default'] FeedbackModal: typeof import('./src/components/toolbar/FeedbackModal.vue')['default'] Fireworks: typeof import('./src/components/Fireworks.vue')['default'] - Footer: typeof import('./src/components/Practice/Footer.vue')['default'] + Footer: typeof import('./src/pages/practice/Footer.vue')['default'] IconWrapper: typeof import('./src/components/IconWrapper.vue')['default'] Input: typeof import('./src/components/Input.vue')['default'] List: typeof import('./src/components/list/List.vue')['default'] ListItem: typeof import('./src/components/list/ListItem.vue')['default'] MiniDialog: typeof import('./src/components/dialog/MiniDialog.vue')['default'] - Options: typeof import('./src/components/Practice/Options.vue')['default'] - Panel: typeof import('./src/components/Practice/Panel.vue')['default'] + Options: typeof import('./src/pages/practice/Options.vue')['default'] + Panel: typeof import('./src/pages/practice/Panel.vue')['default'] PopConfirm: typeof import('./src/components/PopConfirm.vue')['default'] - Practice: typeof import('./src/components/Practice/index.vue')['default'] - PracticeArticle: typeof import('./src/components/Practice/practice-article/index.vue')['default'] - PracticeWord: typeof import('./src/components/Practice/practice-word/index.vue')['default'] + Practice: typeof import('./src/pages/practice/index.vue')['default'] + PracticeArticle: typeof import('./src/pages/practice/practice-article/index.vue')['default'] + PracticeWord: typeof import('./src/pages/practice/practice-word/index.vue')['default'] RepeatSetting: typeof import('./src/components/toolbar/RepeatSetting.vue')['default'] Ring: typeof import('./src/components/Ring.vue')['default'] + RouterLink: typeof import('vue-router')['RouterLink'] + RouterView: typeof import('vue-router')['RouterView'] SettingDialog: typeof import('./src/components/dialog/SettingDialog.vue')['default'] Slide: typeof import('./src/components/Slide.vue')['default'] - Statistics: typeof import('./src/components/Practice/Statistics.vue')['default'] + Statistics: typeof import('./src/pages/practice/Statistics.vue')['default'] Toolbar: typeof import('./src/components/toolbar/index.vue')['default'] Tooltip: typeof import('./src/components/Tooltip.vue')['default'] TranslateSetting: typeof import('./src/components/toolbar/TranslateSetting.vue')['default'] - Typing: typeof import('./src/components/Practice/practice-word/Typing.vue')['default'] - TypingArticle: typeof import('./src/components/Practice/practice-article/TypingArticle.vue')['default'] - TypingWord: typeof import('./src/components/Practice/practice-word/TypingWord.vue')['default'] + Typing: typeof import('./src/pages/practice/practice-word/Typing.vue')['default'] + TypingArticle: typeof import('./src/pages/practice/practice-article/TypingArticle.vue')['default'] + TypingWord: typeof import('./src/pages/practice/practice-word/TypingWord.vue')['default'] VirtualWordList: typeof import('./src/components/list/VirtualWordList.vue')['default'] VolumeIcon: typeof import('./src/components/icon/VolumeIcon.vue')['default'] VolumeSetting: typeof import('./src/components/toolbar/VolumeSetting.vue')['default'] diff --git a/package.json b/package.json index 9aaf5360..a55bd44a 100644 --- a/package.json +++ b/package.json @@ -36,6 +36,7 @@ "vue": "^3.3.4", "vue-activity-calendar": "^1.2.2", "vue-i18n": "9", + "vue-router": "4", "vue-virtual-list-v3": "^1.5.1" }, "devDependencies": { @@ -47,6 +48,8 @@ "@vue/compiler-sfc": "^3.3.4", "commitizen": "^4.3.0", "cz-conventional-changelog": "^3.3.0", + "esm": "^3.2.25", + "gulp": "^4.0.2", "husky": "^8.0.3", "push-dir": "^0.4.1", "rollup-plugin-visualizer": "^5.9.2", @@ -57,8 +60,6 @@ "unplugin-vue-components": "^0.25.2", "vite": "^4.4.5", "vue-tsc": "^1.8.5", - "esm": "^3.2.25", - "gulp": "^4.0.2", "xlsx": "^0.18.5" }, "config": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bd124d58..d2f7b80f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -65,6 +65,9 @@ dependencies: vue-i18n: specifier: '9' version: 9.6.5(vue@3.3.4) + vue-router: + specifier: '4' + version: 4.2.5(vue@3.3.4) vue-virtual-list-v3: specifier: ^1.5.1 version: 1.5.1 @@ -5077,6 +5080,15 @@ packages: vue: 3.3.4 dev: false + /vue-router@4.2.5(vue@3.3.4): + resolution: {integrity: sha512-DIUpKcyg4+PTQKfFPX88UWhlagBEBEfJ5A8XDXRJLUnZOvcpMF8o/dnL90vpVkGaPbjvXazV/rC1qBKrZlFugw==} + peerDependencies: + vue: ^3.2.0 + dependencies: + '@vue/devtools-api': 6.5.0 + vue: 3.3.4 + dev: false + /vue-template-compiler@2.7.14: resolution: {integrity: sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ==} dependencies: diff --git a/src/App.vue b/src/App.vue index 34bc04ea..5a7ef85a 100644 --- a/src/App.vue +++ b/src/App.vue @@ -3,7 +3,7 @@ import {onMounted, watch} from "vue"; import {BaseState, useBaseStore} from "@/stores/base.ts"; import {DictType, SaveConfig, SaveDict} from "@/types.ts" -import Practice from "@/components/Practice/index.vue" +import Practice from "@/pages/practice/index.vue" import {useRuntimeStore} from "@/stores/runtime.ts"; import {useSettingStore} from "@/stores/setting.ts"; import {cloneDeep} from "lodash-es"; @@ -65,9 +65,7 @@ onMounted(() => { \ No newline at end of file diff --git a/src/components/Practice/Footer.vue b/src/pages/practice/Footer.vue similarity index 100% rename from src/components/Practice/Footer.vue rename to src/pages/practice/Footer.vue diff --git a/src/components/Practice/Options.vue b/src/pages/practice/Options.vue similarity index 100% rename from src/components/Practice/Options.vue rename to src/pages/practice/Options.vue diff --git a/src/components/Practice/Panel.vue b/src/pages/practice/Panel.vue similarity index 99% rename from src/components/Practice/Panel.vue rename to src/pages/practice/Panel.vue index 4b120dce..3dcdc45b 100644 --- a/src/components/Practice/Panel.vue +++ b/src/pages/practice/Panel.vue @@ -213,7 +213,7 @@ const {