From 116a1f7745fe3b89ef82d9a2376446f50623b660 Mon Sep 17 00:00:00 2001 From: vben Date: Tue, 29 Dec 2020 23:37:40 +0800 Subject: [PATCH] wip(table): perf table #136,146,134 --- CHANGELOG.zh_CN.md | 6 + package.json | 10 +- src/App.vue | 12 +- src/components/Button/index.ts | 5 +- .../Button/src/PopConfirmButton.vue | 34 ++ .../Container/src/ScrollContainer.vue | 8 +- src/components/Dropdown/src/Dropdown.vue | 8 +- src/components/Dropdown/src/types.ts | 1 + .../Form/src/components/ApiSelect.vue | 36 +- .../Form/src/hooks/useFormEvents.ts | 3 +- src/components/Preview/index.ts | 3 + src/components/Preview/src/index.vue | 69 +++ src/components/Preview/src/types.ts | 18 + src/components/Table/index.ts | 9 +- src/components/Table/src/BasicTable.vue | 181 +++----- .../Table/src/components/TableAction.tsx | 131 ------ .../Table/src/components/TableAction.vue | 126 +++++ .../Table/src/components/TableFooter.vue | 85 ++++ .../Table/src/components/TableHeader.vue | 64 +++ .../Table/src/components/TableImg.vue | 46 +- .../Table/src/components/TableSetting.vue | 283 ------------ .../Table/src/components/TableTitle.vue | 22 +- .../Table/src/components/renderFooter.tsx | 64 --- .../Table/src/components/renderTitle.tsx | 29 -- .../src/components/settings/ColumnSetting.vue | 430 ++++++++++++++++++ .../components/settings/FullScreenSetting.vue | 43 ++ .../src/components/settings/RedoSetting.vue | 37 ++ .../src/components/settings/SizeSetting.vue | 65 +++ .../Table/src/components/settings/index.vue | 61 +++ src/components/Table/src/hooks/useColumns.ts | 83 +++- .../Table/src/hooks/useRowSelection.ts | 5 + .../Table/src/hooks/useTableContext.ts | 23 + .../Table/src/hooks/useTableFooter.ts | 57 +++ .../Table/src/hooks/useTableForm.ts | 46 ++ .../Table/src/hooks/useTableHeader.ts | 46 ++ .../Table/src/hooks/useTableScroll.ts | 55 ++- .../Table/src/hooks/useTableStyle.ts | 4 +- src/components/Table/src/props.ts | 4 +- .../Table/src/style/editable-cell.less | 2 - src/components/Table/src/style/index.less | 63 +-- src/components/Table/src/types/table.ts | 11 +- src/components/Table/src/types/tableAction.ts | 2 + src/design/ant/index.less | 4 + src/design/config.less | 3 + src/design/index.less | 4 +- src/design/var/index.less | 6 + src/hooks/component/useFormItem.ts | 7 +- src/hooks/core/useContext.ts | 1 - src/hooks/web/useFullScreen.ts | 8 +- src/hooks/web/useSortable.ts | 19 + src/layouts/default/tabs/useMultipleTabs.ts | 47 +- src/locales/lang/en/component/app.ts | 3 + src/locales/lang/en/component/table.ts | 4 + src/locales/lang/zh_CN/component/app.ts | 2 + src/locales/lang/zh_CN/component/table.ts | 4 + src/setup/App.ts | 14 - src/store/modules/tab.ts | 2 +- src/store/modules/user.ts | 5 +- src/utils/index.ts | 5 +- src/views/demo/form/index.vue | 1 + src/views/demo/table/FormTable.vue | 5 +- src/views/demo/table/tableData.tsx | 8 +- vite.config.ts | 6 +- yarn.lock | 341 +++++++++----- 64 files changed, 1859 insertions(+), 930 deletions(-) create mode 100644 src/components/Button/src/PopConfirmButton.vue create mode 100644 src/components/Preview/src/index.vue delete mode 100644 src/components/Table/src/components/TableAction.tsx create mode 100644 src/components/Table/src/components/TableAction.vue create mode 100644 src/components/Table/src/components/TableFooter.vue create mode 100644 src/components/Table/src/components/TableHeader.vue delete mode 100644 src/components/Table/src/components/TableSetting.vue delete mode 100644 src/components/Table/src/components/renderFooter.tsx delete mode 100644 src/components/Table/src/components/renderTitle.tsx create mode 100644 src/components/Table/src/components/settings/ColumnSetting.vue create mode 100644 src/components/Table/src/components/settings/FullScreenSetting.vue create mode 100644 src/components/Table/src/components/settings/RedoSetting.vue create mode 100644 src/components/Table/src/components/settings/SizeSetting.vue create mode 100644 src/components/Table/src/components/settings/index.vue create mode 100644 src/components/Table/src/hooks/useTableContext.ts create mode 100644 src/components/Table/src/hooks/useTableFooter.ts create mode 100644 src/components/Table/src/hooks/useTableForm.ts create mode 100644 src/components/Table/src/hooks/useTableHeader.ts create mode 100644 src/design/config.less create mode 100644 src/hooks/web/useSortable.ts diff --git a/CHANGELOG.zh_CN.md b/CHANGELOG.zh_CN.md index f8d18692..2729b9b0 100644 --- a/CHANGELOG.zh_CN.md +++ b/CHANGELOG.zh_CN.md @@ -14,6 +14,12 @@ - useForm: 支持动态改变参数。可以传入`Ref`类型与`Computed`类型进行动态更改 - table: 新增`clickToRowSelect`属性。用于控制点击行是否选中勾选狂 - table: 监听行点击事件 +- table: 表格列配置按钮增加 列拖拽,列固定功能。 +- table:表格列配置新增`defaultHidden` 属性。用于默认隐藏。可在表格列配置勾选显示 + +### ✨ Refactor + +- 重构表单,解决已知 bug ### ⚡ Performance Improvements diff --git a/package.json b/package.json index 85082491..8b7dd8d0 100644 --- a/package.json +++ b/package.json @@ -63,11 +63,11 @@ "@types/sortablejs": "^1.10.6", "@types/yargs": "^15.0.12", "@types/zxcvbn": "^4.4.0", - "@typescript-eslint/eslint-plugin": "^4.11.0", - "@typescript-eslint/parser": "^4.11.0", + "@typescript-eslint/eslint-plugin": "^4.11.1", + "@typescript-eslint/parser": "^4.11.1", "@vue/compiler-sfc": "^3.0.4", - "@vuedx/typecheck": "^0.2.4-0", - "@vuedx/typescript-plugin-vue": "^0.2.4-0", + "@vuedx/typecheck": "^0.4.0", + "@vuedx/typescript-plugin-vue": "^0.4.0", "autoprefixer": "^9.8.6", "commitizen": "^4.2.2", "conventional-changelog-cli": "^2.1.1", @@ -102,7 +102,7 @@ "vite-plugin-html": "^1.0.0-beta.2", "vite-plugin-mock": "^1.0.9", "vite-plugin-purge-icons": "^0.4.5", - "vite-plugin-pwa": "^0.2.0", + "vite-plugin-pwa": "^0.2.1", "vue-eslint-parser": "^7.3.0", "yargs": "^16.2.0" }, diff --git a/src/App.vue b/src/App.vue index c54e55d2..c0c46bf9 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,9 +1,5 @@