From 46e087537415a91f8a656e1d7a83359d616d1b91 Mon Sep 17 00:00:00 2001 From: vben Date: Wed, 18 Nov 2020 22:41:59 +0800 Subject: [PATCH] chore: add some notes --- .vscode/settings.json | 1 + CHANGELOG.zh_CN.md | 3 +- build/vite/plugin/context/transform.ts | 4 +- mock/demo/account.ts | 6 +- package.json | 18 +- prettier.config.js | 4 + public/resource/img/loading.svg | 3 - src/App.vue | 31 +- src/api/demo/account.ts | 2 +- src/api/sys/menu.ts | 2 +- src/api/sys/model/menuModel.ts | 4 +- src/api/sys/upload.ts | 2 +- src/components/Authority/index.ts | 8 +- src/components/Authority/src/index.vue | 25 +- src/components/Basic/src/BasicArrow.vue | 4 + src/components/Basic/src/BasicHelp.vue | 4 +- src/components/Button/index.vue | 53 +- .../Container/src/LazyContainer.vue | 3 +- .../src/collapse/CollapseContainer.vue | 17 +- src/components/ContextMenu/src/props.ts | 6 +- src/components/CountTo/index.ts | 2 +- src/components/Description/src/index.tsx | 16 +- src/components/Description/src/types.ts | 9 +- src/components/Drawer/src/BasicDrawer.tsx | 6 +- src/components/Drawer/src/props.ts | 5 +- src/components/Drawer/src/types.ts | 2 +- src/components/Drawer/src/useDrawer.ts | 2 +- src/components/Dropdown/props.ts | 50 +- src/components/Form/src/BasicForm.vue | 18 +- src/components/Form/src/componentMap.ts | 2 +- src/components/Form/src/hooks/useAdvanced.ts | 4 +- .../Form/src/hooks/useFormAction.ts | 12 +- .../Form/src/hooks/useFormValues.ts | 6 +- .../Form/src/hooks/useLabelWidth.ts | 2 +- src/components/Form/src/types/form.ts | 98 ++-- src/components/Menu/src/BasicMenu.tsx | 5 +- src/components/Menu/src/SearchInput.vue | 4 +- src/components/Menu/src/props.ts | 5 +- src/components/Menu/src/types.d.ts | 3 +- src/components/Table/src/style/index.less | 4 +- src/components/registerGlobComp.ts | 2 +- src/design/var/index.less | 2 +- src/enums/appEnum.ts | 7 + src/enums/eventBusEnum.ts | 1 - src/enums/menuEnum.ts | 7 - src/enums/paginationEnum.ts | 4 - src/enums/resultEnum.ts | 6 - src/hooks/core/onMountedOrActivated.ts | 18 + src/hooks/core/useExpose.ts | 9 + src/hooks/core/useModel.ts | 47 ++ src/hooks/core/useRefs.ts | 15 + src/hooks/core/useThrottle.ts | 6 +- src/hooks/core/useToggle.ts | 20 + src/hooks/event/useIntersectionObserver.ts | 48 ++ src/hooks/web/useClickOutside.ts | 9 +- src/hooks/web/useHeight.ts | 13 + src/hooks/web/useLockPage.ts | 33 +- src/hooks/web/usePermission.ts | 45 +- src/hooks/web/useRect.ts | 33 ++ src/layouts/default/setting/SettingDrawer.tsx | 2 +- src/layouts/default/setting/const.ts | 8 +- src/main.ts | 24 +- src/settings/projectSetting.ts | 8 +- src/{useApp.ts => setup/Application.ts} | 15 +- src/setup/ant-design-vue/index.ts | 2 +- src/setup/ant-design-vue/spin.less | 14 - src/setup/ant-design-vue/spin.tsx | 9 +- src/setup/application.ts | 86 +++ src/setup/directives/index.ts | 6 +- src/setup/directives/permission.ts | 38 +- src/setup/directives/repeatClick.ts | 19 +- src/setup/error-handle/index.ts | 60 ++- src/setup/theme/index.ts | 24 +- src/store/index.ts | 11 +- src/types/config.d.ts | 8 +- src/types/event.d.ts | 6 +- src/types/global.d.ts | 15 +- src/types/window.d.ts | 1 + src/utils/auth/index.ts | 5 +- src/utils/event/triggerWindowResizeEvent.ts | 2 +- src/utils/is.ts | 6 +- src/utils/log.ts | 1 + src/views/dashboard/welcome/index.vue | 3 - src/views/demo/page/form/high/data.ts | 4 +- src/views/demo/permission/back/Btn.vue | 2 +- src/views/demo/permission/front/Btn.vue | 2 +- yarn.lock | 493 +++++++----------- 87 files changed, 926 insertions(+), 728 deletions(-) delete mode 100644 src/enums/eventBusEnum.ts delete mode 100644 src/enums/paginationEnum.ts delete mode 100644 src/enums/resultEnum.ts create mode 100644 src/hooks/core/onMountedOrActivated.ts create mode 100644 src/hooks/core/useExpose.ts create mode 100644 src/hooks/core/useModel.ts create mode 100644 src/hooks/core/useRefs.ts create mode 100644 src/hooks/core/useToggle.ts create mode 100644 src/hooks/event/useIntersectionObserver.ts create mode 100644 src/hooks/web/useHeight.ts create mode 100644 src/hooks/web/useRect.ts rename src/{useApp.ts => setup/Application.ts} (90%) delete mode 100644 src/setup/ant-design-vue/spin.less create mode 100644 src/setup/application.ts diff --git a/.vscode/settings.json b/.vscode/settings.json index 518b70fb4..4336b650e 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -138,6 +138,7 @@ // "vetur.format.defaultFormatter.html": "prettyhtml", "vetur.format.defaultFormatter.ts": "prettier-tslint", "vetur.format.defaultFormatter.js": "prettier", + "vetur.languageFeatures.codeActions": false, // "vetur.useWorkspaceDependencies": true, "vetur.format.defaultFormatterOptions": { "js-beautify-html": { diff --git a/CHANGELOG.zh_CN.md b/CHANGELOG.zh_CN.md index 36b19d221..09f3acb63 100644 --- a/CHANGELOG.zh_CN.md +++ b/CHANGELOG.zh_CN.md @@ -11,7 +11,8 @@ ### 🎫 Chores -- 更新 antdv 到`2.0.0-rc.1` +- 更新 antdv 到`2.0.0-rc.1`(暂时还原到 beta15,rc1 菜单卡顿太严重.) +- 添加部分注释 ### 🐛 Bug Fixes diff --git a/build/vite/plugin/context/transform.ts b/build/vite/plugin/context/transform.ts index e3fd43d4d..49f5e01a8 100644 --- a/build/vite/plugin/context/transform.ts +++ b/build/vite/plugin/context/transform.ts @@ -1,7 +1,7 @@ -// 修改自 +// Modified from // https://github.com/luxueyan/vite-transform-globby-import/blob/master/src/index.ts -// TODO 目前还不能监听文件新增及删除 内容已经改变,缓存问题? +// TODO Currently, it is not possible to monitor file addition and deletion. The content has been changed, the cache problem? import { join } from 'path'; import { lstatSync } from 'fs'; import glob from 'glob'; diff --git a/mock/demo/account.ts b/mock/demo/account.ts index 299f62499..45008744f 100644 --- a/mock/demo/account.ts +++ b/mock/demo/account.ts @@ -4,11 +4,11 @@ import { resultSuccess } from '../_util'; const userInfo = { name: 'Vben', userid: '00000001', - email: 'antdesign@alipay.com', + email: 'test@gmail.com', signature: '海纳百川,有容乃大', introduction: '微笑着,努力着,欣赏着', title: '交互专家', - group: '蚂蚁集团11-某某某事业群-某某平台部-某某技术部-UED', + group: '某某某事业群-某某平台部-某某技术部-UED', tags: [ { key: '0', @@ -38,7 +38,7 @@ const userInfo = { notifyCount: 12, unreadCount: 11, country: 'China', - address: '厦门市 77 号', + address: 'Xiamen City 77', phone: '0592-268888888', }; diff --git a/package.json b/package.json index 79355d9a8..481c2ab8c 100644 --- a/package.json +++ b/package.json @@ -22,8 +22,8 @@ }, "dependencies": { "@iconify/iconify": "^2.0.0-rc.2", - "@vueuse/core": "^4.0.0-beta.41", - "ant-design-vue": "^2.0.0-rc.1", + "@vueuse/core": "4.0.0-beta.41", + "ant-design-vue": "2.0.0-beta.15", "apexcharts": "3.22.0", "axios": "^0.21.0", "echarts": "^4.9.0", @@ -35,7 +35,7 @@ "qrcode": "^1.4.4", "vditor": "^3.6.2", "vue": "^3.0.2", - "vue-i18n": "^9.0.0-beta.6", + "vue-i18n": "^9.0.0-beta.7", "vue-router": "^4.0.0-rc.3", "vuex": "^4.0.0-rc.1", "vuex-module-decorators": "^1.0.1", @@ -45,10 +45,10 @@ "devDependencies": { "@commitlint/cli": "^11.0.0", "@commitlint/config-conventional": "^11.0.0", - "@iconify/json": "^1.1.258", + "@iconify/json": "^1.1.260", "@ls-lint/ls-lint": "^1.9.2", "@purge-icons/generated": "^0.4.1", - "@types/echarts": "^4.9.0", + "@types/echarts": "^4.9.1", "@types/fs-extra": "^9.0.4", "@types/koa-static": "^4.0.1", "@types/lodash-es": "^4.17.3", @@ -56,10 +56,10 @@ "@types/nprogress": "^0.2.0", "@types/qrcode": "^1.3.5", "@types/rollup-plugin-visualizer": "^2.6.0", - "@types/yargs": "^15.0.9", + "@types/yargs": "^15.0.10", "@types/zxcvbn": "^4.4.0", - "@typescript-eslint/eslint-plugin": "^4.6.1", - "@typescript-eslint/parser": "^4.6.1", + "@typescript-eslint/eslint-plugin": "^4.8.1", + "@typescript-eslint/parser": "^4.8.1", "@vue/compiler-sfc": "^3.0.2", "@vuedx/typecheck": "^0.2.4-0", "@vuedx/typescript-plugin-vue": "^0.2.4-0", @@ -84,7 +84,7 @@ "prettier": "^2.1.2", "rimraf": "^3.0.2", "rollup-plugin-visualizer": "^4.1.2", - "stylelint": "^13.7.2", + "stylelint": "^13.8.0", "stylelint-config-prettier": "^8.0.2", "stylelint-config-standard": "^20.0.0", "stylelint-order": "^4.1.0", diff --git a/prettier.config.js b/prettier.config.js index e0f42b9d9..864a0ae5c 100644 --- a/prettier.config.js +++ b/prettier.config.js @@ -1,3 +1,7 @@ +/* + * @Author: Vben + * @Description: + */ module.exports = { printWidth: 100, tabWidth: 2, diff --git a/public/resource/img/loading.svg b/public/resource/img/loading.svg index 5214fd0cd..15395c62e 100644 --- a/public/resource/img/loading.svg +++ b/public/resource/img/loading.svg @@ -33,20 +33,17 @@ - - - diff --git a/src/App.vue b/src/App.vue index edcf4af5f..745205a8f 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,5 +1,5 @@ @@ -13,9 +13,8 @@ import moment from 'moment'; import 'moment/dist/locale/zh-cn'; - import { useConfigProvider, useInitAppConfigStore } from './useApp'; + import { getConfigProvider, initAppConfigStore } from '/@/setup/Application'; import { useLockPage } from '/@/hooks/web/useLockPage'; - import { useSetting } from '/@/hooks/core/useSetting'; moment.locale('zh-cn'); @@ -23,26 +22,22 @@ name: 'App', components: { ConfigProvider }, setup() { - // Initialize application settings - useInitAppConfigStore(); - // Initialize breakpoint monitoring - createBreakpointListen(); - // Get system configuration - const { projectSetting } = useSetting(); - // Get ConfigProvider configuration - const { transformCellText } = useConfigProvider(); + // Initialize vuex internal system configuration + initAppConfigStore(); - let lockOn = {}; - if (projectSetting.lockTime) { - // Monitor the mouse or keyboard time, used to recalculate the lock screen time - const { on } = useLockPage(); - lockOn = on; - } + // Create a global breakpoint monitor + createBreakpointListen(); + + // Get ConfigProvider configuration + const { transformCellText } = getConfigProvider(); + + // Create a lock screen monitor + const lockEvent = useLockPage(); return { transformCellText, zhCN, - lockOn, + lockEvent, }; }, }); diff --git a/src/api/demo/account.ts b/src/api/demo/account.ts index 049569b98..764dca47f 100644 --- a/src/api/demo/account.ts +++ b/src/api/demo/account.ts @@ -5,7 +5,7 @@ enum Api { ACCOUNT_INFO = '/account/getAccountInfo', } -// 获取个人中心--基础设置内容 +// Get personal center-basic settings export function accountInfoApi() { return defHttp.request({ url: Api.ACCOUNT_INFO, diff --git a/src/api/sys/menu.ts b/src/api/sys/menu.ts index cd9509abf..b29f1ba75 100644 --- a/src/api/sys/menu.ts +++ b/src/api/sys/menu.ts @@ -7,7 +7,7 @@ enum Api { } /** - * @description: 根据id获取用户菜单 + * @description: Get user menu based on id */ export function getMenuListById(params: getMenuListByIdParams) { return defHttp.request({ diff --git a/src/api/sys/model/menuModel.ts b/src/api/sys/model/menuModel.ts index c6c8cdd8f..eac523538 100644 --- a/src/api/sys/model/menuModel.ts +++ b/src/api/sys/model/menuModel.ts @@ -11,13 +11,13 @@ export interface RouteItem { } /** - * @description: 获取菜单接口 + * @description: Get menu interface */ export interface getMenuListByIdParams { id: number | string; } /** - * @description: 获取菜单返回值 + * @description: Get menu return value */ export type getMenuListByIdParamsResultModel = RouteItem[]; diff --git a/src/api/sys/upload.ts b/src/api/sys/upload.ts index 2871d9394..1cdd5c48c 100644 --- a/src/api/sys/upload.ts +++ b/src/api/sys/upload.ts @@ -7,7 +7,7 @@ enum Api { } /** - * @description: 上传接口 + * @description: Upload interface */ export function uploadApi( params: UploadFileParams, diff --git a/src/components/Authority/index.ts b/src/components/Authority/index.ts index 102b7af5b..364cca2a0 100644 --- a/src/components/Authority/index.ts +++ b/src/components/Authority/index.ts @@ -1,2 +1,8 @@ +import type { App } from 'vue'; import Authority from './src/index.vue'; -export default Authority; + +export default (app: App): void => { + app.component(Authority.name, Authority); +}; + +export { Authority }; diff --git a/src/components/Authority/src/index.vue b/src/components/Authority/src/index.vue index f9f4735ce..f394f9979 100644 --- a/src/components/Authority/src/index.vue +++ b/src/components/Authority/src/index.vue @@ -1,17 +1,28 @@ +