vxe-table 4.17.0-beta.9 → 4.17.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/README.md +3 -4
  2. package/README.zh-TW.md +1 -1
  3. package/es/grid/src/grid.js +13 -5
  4. package/es/index.css +1 -1
  5. package/es/index.min.css +1 -1
  6. package/es/locale/lang/en-US.js +22 -22
  7. package/es/style.css +1 -1
  8. package/es/style.min.css +1 -1
  9. package/es/table/module/menu/hook.js +2 -2
  10. package/es/table/src/body.js +3 -0
  11. package/es/table/src/footer.js +2 -0
  12. package/es/table/src/header.js +3 -0
  13. package/es/table/src/table.js +146 -35
  14. package/es/table/src/util.js +22 -19
  15. package/es/table/style.css +48 -2
  16. package/es/table/style.min.css +1 -1
  17. package/es/ui/index.js +1 -1
  18. package/es/ui/src/log.js +1 -1
  19. package/es/vxe-table/style.css +48 -2
  20. package/es/vxe-table/style.min.css +1 -1
  21. package/helper/vetur/attributes.json +1 -1
  22. package/helper/vetur/tags.json +1 -1
  23. package/lib/grid/src/grid.js +12 -4
  24. package/lib/grid/src/grid.min.js +1 -1
  25. package/lib/index.css +1 -1
  26. package/lib/index.min.css +1 -1
  27. package/lib/index.umd.js +59 -41
  28. package/lib/index.umd.min.js +1 -1
  29. package/lib/locale/lang/en-US.js +22 -22
  30. package/lib/locale/lang/en-US.min.js +1 -1
  31. package/lib/locale/lang/en-US.umd.js +22 -22
  32. package/lib/style.css +1 -1
  33. package/lib/style.min.css +1 -1
  34. package/lib/table/module/menu/hook.js +2 -0
  35. package/lib/table/module/menu/hook.min.js +1 -1
  36. package/lib/table/src/body.js +3 -0
  37. package/lib/table/src/body.min.js +1 -1
  38. package/lib/table/src/footer.js +2 -0
  39. package/lib/table/src/footer.min.js +1 -1
  40. package/lib/table/src/header.js +3 -0
  41. package/lib/table/src/header.min.js +1 -1
  42. package/lib/table/src/table.js +25 -16
  43. package/lib/table/src/table.min.js +1 -1
  44. package/lib/table/src/util.js +10 -19
  45. package/lib/table/src/util.min.js +1 -1
  46. package/lib/table/style/style.css +48 -2
  47. package/lib/table/style/style.min.css +1 -1
  48. package/lib/ui/index.js +1 -1
  49. package/lib/ui/index.min.js +1 -1
  50. package/lib/ui/src/log.js +1 -1
  51. package/lib/ui/src/log.min.js +1 -1
  52. package/lib/vxe-table/style/style.css +48 -2
  53. package/lib/vxe-table/style/style.min.css +1 -1
  54. package/package.json +2 -2
  55. package/packages/grid/src/grid.ts +53 -45
  56. package/packages/locale/lang/en-US.ts +22 -22
  57. package/packages/table/module/menu/hook.ts +2 -2
  58. package/packages/table/src/body.ts +3 -0
  59. package/packages/table/src/footer.ts +2 -0
  60. package/packages/table/src/header.ts +3 -0
  61. package/packages/table/src/table.ts +147 -35
  62. package/packages/table/src/util.ts +30 -19
  63. package/styles/components/table.scss +90 -2
  64. /package/es/{iconfont.1760602279303.ttf → iconfont.1761181613193.ttf} +0 -0
  65. /package/es/{iconfont.1760602279303.woff → iconfont.1761181613193.woff} +0 -0
  66. /package/es/{iconfont.1760602279303.woff2 → iconfont.1761181613193.woff2} +0 -0
  67. /package/lib/{iconfont.1760602279303.ttf → iconfont.1761181613193.ttf} +0 -0
  68. /package/lib/{iconfont.1760602279303.woff → iconfont.1761181613193.woff} +0 -0
  69. /package/lib/{iconfont.1760602279303.woff2 → iconfont.1761181613193.woff2} +0 -0
package/README.md CHANGED
@@ -4,7 +4,6 @@
4
4
 
5
5
  [![github star](https://img.shields.io/github/stars/x-extends/vxe-table.svg)](https://github.com/x-extends/vxe-table/stargazers)
6
6
  [![gitee star](https://gitee.com/x-extends/vxe-table/badge/star.svg?theme=gvp)](https://gitee.com/x-extends/vxe-table/stargazers)
7
- [![gitcode star](https://gitcode.com/x-extends/vxe-table/star/badge.svg)](https://gitcode.com/x-extends/vxe-table/stargazers)
8
7
  [![NodeJS with Webpack](https://github.com/x-extends/vxe-table/actions/workflows/webpack.yml/badge.svg)](https://github.com/x-extends/vxe-table/actions/workflows/webpack.yml)
9
8
  [![npm downloads](https://img.shields.io/npm/dt/vxe-table.svg?style=flat-square)](https://npm-stat.com/charts.html?package=vxe-table)
10
9
  [![issues](https://img.shields.io/github/issues/x-extends/vxe-table.svg)](https://github.com/x-extends/vxe-table/issues)
@@ -13,7 +12,7 @@
13
12
  [![pull requests closed](https://img.shields.io/github/issues-pr-closed/x-extends/vxe-table.svg)](https://github.com/x-extends/vxe-table/pulls?q=is%3Apr+is%3Aclosed)
14
13
  [![npm license](https://img.shields.io/github/license/mashape/apistatus.svg)](LICENSE)
15
14
 
16
- 一个基于 [Vxe UI](https://github.com/x-extends/vxe-pc-ui) 的 PC 端表格组件,支持增删改查的可编辑表格,支持复制粘贴、数据透视表、虚拟列表高性能的企业级表格解决方案
15
+ 一个基于 [Vxe UI](https://github.com/x-extends/vxe-pc-ui) 的 PC 端表格组件,支持增删改查的可编辑表格,支持 Excel 复制粘贴、数据透视表、虚拟列表高性能的企业级表格解决方案
17
16
 
18
17
  * 设计理念
19
18
  * 面向现代浏览器,不支持 IE
@@ -22,7 +21,7 @@
22
21
 
23
22
  * 版本说明
24
23
  * **V4**
25
- * [x] v3.17 优化触摸板操作;重构筛选,更简单配置功能更强大
24
+ * [x] v3.17 优化触摸板操作;重构筛选渲染,配置更简单功能更强大
26
25
  * [x] v3.16 适配 Gantt 甘特图
27
26
  * [x] v3.15 优化虚拟渲染,降低内存的占用率
28
27
  * [x] v4.14 重构虚拟渲染,提高渲染与拖拽效果流畅度
@@ -32,7 +31,7 @@
32
31
  * [x] v4.7 基于 vue3.2+,内部重构,拆分 Table 库和 UI 库,只支持现代浏览器,不支持 IE
33
32
  * [x] ~~v4.0 基于 vue3.2+,只支持现代浏览器,不支持 IE(2020-03-01 ~ 2024-12-01 已停止维护)~~
34
33
  * **V3**
35
- * [x] v3.19 优化触摸板操作;重构筛选,更简单配置功能更强大
34
+ * [x] v3.19 优化触摸板操作;重构筛选渲染,配置更简单功能更强大
36
35
  * [x] v3.18 适配 Gantt 甘特图
37
36
  * [x] v3.17 优化虚拟渲染,降低内存的占用率
38
37
  * [x] v3.16 重构虚拟渲染,提高渲染与拖拽效果流畅度
package/README.zh-TW.md CHANGED
@@ -13,7 +13,7 @@
13
13
  [![pull requests closed](https://img.shields.io/github/issues-pr-closed/x-extends/vxe-table.svg)](https://github.com/x-extends/vxe-table/pulls?q=is%3Apr+is%3Aclosed)
14
14
  [![npm license](https://img.shields.io/github/license/mashape/apistatus.svg)](LICENSE)
15
15
 
16
- 一個基於 [Vxe UI](https://github.com/x-extends/vxe-pc-ui) 的 PC 端表格元件,支持增刪改查的可編輯表格,支持複製粘貼、數據透視錶、虛擬清單高性能的企業級表格解決方案
16
+ 一個基於 [Vxe UI](https://github.com/x-extends/vxe-pc-ui) 的 PC 端表格元件,支持增刪改查的可編輯表格,支持 Excel 複製粘貼、數據透視錶、虛擬清單高性能的企業級表格解決方案
17
17
 
18
18
  ## 瀏覽器支持
19
19
 
@@ -14,7 +14,7 @@ import VxeTableComponent from '../../table/src/table';
14
14
  import VxeToolbarComponent from '../../toolbar/src/toolbar';
15
15
  const { getConfig, getI18n, commands, hooks, useFns, createEvent, globalEvents, GLOBAL_EVENT_KEYS, renderEmptyElement } = VxeUI;
16
16
  const tableComponentPropKeys = Object.keys(tableProps);
17
- const tableComponentMethodKeys = ['clearAll', 'syncData', 'updateData', 'loadData', 'reloadData', 'reloadRow', 'loadColumn', 'reloadColumn', 'getRowNode', 'getColumnNode', 'getRowIndex', 'getVTRowIndex', 'getVMRowIndex', 'getColumnIndex', 'getVTColumnIndex', 'getVMColumnIndex', 'setRow', 'createData', 'createRow', 'revertData', 'clearData', 'isRemoveByRow', 'isInsertByRow', 'isUpdateByRow', 'getColumns', 'getColumnById', 'getColumnByField', 'getTableColumn', 'getFullColumns', 'getData', 'getCheckboxRecords', 'getParentRow', 'getTreeRowChildren', 'getTreeRowLevel', 'getTreeParentRow', 'getRowSeq', 'getRowById', 'getRowid', 'getTableData', 'getFullData', 'setColumnFixed', 'clearColumnFixed', 'setColumnWidth', 'getColumnWidth', 'recalcRowHeight', 'setRowHeightConf', 'getRowHeightConf', 'setRowHeight', 'getRowHeight', 'hideColumn', 'showColumn', 'resetColumn', 'refreshColumn', 'refreshScroll', 'recalculate', 'closeTooltip', 'isAllCheckboxChecked', 'isAllCheckboxIndeterminate', 'getCheckboxIndeterminateRecords', 'setCheckboxRow', 'setCheckboxRowKey', 'isCheckedByCheckboxRow', 'isCheckedByCheckboxRowKey', 'isIndeterminateByCheckboxRow', 'isIndeterminateByCheckboxRowKey', 'toggleCheckboxRow', 'setAllCheckboxRow', 'getRadioReserveRecord', 'clearRadioReserve', 'getCheckboxReserveRecords', 'clearCheckboxReserve', 'toggleAllCheckboxRow', 'clearCheckboxRow', 'setCurrentRow', 'isCheckedByRadioRow', 'isCheckedByRadioRowKey', 'setRadioRow', 'setRadioRowKey', 'clearCurrentRow', 'clearRadioRow', 'getCurrentRecord', 'getRadioRecord', 'getCurrentColumn', 'setCurrentColumn', 'clearCurrentColumn', 'setPendingRow', 'togglePendingRow', 'hasPendingByRow', 'isPendingByRow', 'getPendingRecords', 'clearPendingRow', 'setFilterByEvent', 'sort', 'setSort', 'setSortByEvent', 'clearSort', 'clearSortByEvent', 'isSort', 'getSortColumns', 'closeFilter', 'isFilter', 'clearFilterByEvent', 'isActiveFilterByColumn', 'isRowExpandLoaded', 'clearRowExpandLoaded', 'reloadRowExpand', 'reloadRowExpand', 'toggleRowExpand', 'setAllRowExpand', 'setRowExpand', 'isExpandByRow', 'isRowExpandByRow', 'clearRowExpand', 'clearRowExpandReserve', 'getRowExpandRecords', 'getTreeExpandRecords', 'isTreeExpandLoaded', 'clearTreeExpandLoaded', 'reloadTreeExpand', 'reloadTreeChilds', 'toggleTreeExpand', 'setAllTreeExpand', 'setTreeExpand', 'isTreeExpandByRow', 'clearTreeExpand', 'clearTreeExpandReserve', 'getScroll', 'scrollTo', 'scrollToRow', 'scrollToColumn', 'clearScroll', 'updateFooter', 'updateStatus', 'setMergeCells', 'removeInsertRow', 'removeMergeCells', 'getMergeCells', 'setMergeHeaderCells', 'removeMergeHeaderCells', 'getMergeHeaderCells', 'clearMergeHeaderCells', 'clearMergeCells', 'setMergeFooterItems', 'removeMergeFooterItems', 'getMergeFooterItems', 'clearMergeFooterItems', 'getCustomStoreData', 'setRowGroupExpand', 'setRowGroupExpandByField', 'setAllRowGroupExpand', 'clearRowGroupExpand', 'isRowGroupExpandByRow', 'isRowGroupRecord', 'isAggregateRecord', 'isAggregateExpandByRow', 'getAggregateContentByRow', 'getAggregateRowChildren', 'setRowGroups', 'clearRowGroups', 'openTooltip', 'moveColumnTo', 'moveRowTo', 'getCellLabel', 'getCellElement', 'focus', 'blur', 'connect', 'connectToolbar'];
17
+ const tableComponentMethodKeys = ['clearAll', 'syncData', 'updateData', 'loadData', 'reloadData', 'reloadRow', 'loadColumn', 'reloadColumn', 'getRowNode', 'getColumnNode', 'getRowIndex', 'getVTRowIndex', 'getVMRowIndex', 'getColumnIndex', 'getVTColumnIndex', 'getVMColumnIndex', 'setRow', 'createData', 'createRow', 'revertData', 'clearData', 'isRemoveByRow', 'isInsertByRow', 'isUpdateByRow', 'getColumns', 'getColumnById', 'getColumnByField', 'getTableColumn', 'getFullColumns', 'getData', 'getCheckboxRecords', 'getParentRow', 'getTreeRowChildren', 'getTreeRowLevel', 'getTreeParentRow', 'getRowSeq', 'getRowById', 'getRowid', 'getTableData', 'getFullData', 'setColumnFixed', 'clearColumnFixed', 'setColumnWidth', 'getColumnWidth', 'recalcRowHeight', 'setRowHeightConf', 'getRowHeightConf', 'setRowHeight', 'getRowHeight', 'hideColumn', 'showColumn', 'resetColumn', 'refreshColumn', 'refreshScroll', 'recalculate', 'closeTooltip', 'isAllCheckboxChecked', 'isAllCheckboxIndeterminate', 'getCheckboxIndeterminateRecords', 'setCheckboxRow', 'setCheckboxRowKey', 'isCheckedByCheckboxRow', 'isCheckedByCheckboxRowKey', 'isIndeterminateByCheckboxRow', 'isIndeterminateByCheckboxRowKey', 'toggleCheckboxRow', 'setAllCheckboxRow', 'getRadioReserveRecord', 'clearRadioReserve', 'getCheckboxReserveRecords', 'clearCheckboxReserve', 'toggleAllCheckboxRow', 'clearCheckboxRow', 'setCurrentRow', 'isCheckedByRadioRow', 'isCheckedByRadioRowKey', 'setRadioRow', 'setRadioRowKey', 'clearCurrentRow', 'clearRadioRow', 'getCurrentRecord', 'getRadioRecord', 'getCurrentColumn', 'setCurrentColumn', 'clearCurrentColumn', 'setPendingRow', 'togglePendingRow', 'hasPendingByRow', 'isPendingByRow', 'getPendingRecords', 'clearPendingRow', 'setFilterByEvent', 'sort', 'setSort', 'setSortByEvent', 'clearSort', 'clearSortByEvent', 'isSort', 'getSortColumns', 'closeFilter', 'isFilter', 'clearFilterByEvent', 'isActiveFilterByColumn', 'isRowExpandLoaded', 'clearRowExpandLoaded', 'reloadRowExpand', 'reloadRowExpand', 'toggleRowExpand', 'setAllRowExpand', 'setRowExpand', 'isExpandByRow', 'isRowExpandByRow', 'clearRowExpand', 'clearRowExpandReserve', 'getRowExpandRecords', 'getTreeExpandRecords', 'isTreeExpandLoaded', 'clearTreeExpandLoaded', 'reloadTreeExpand', 'reloadTreeChilds', 'toggleTreeExpand', 'setAllTreeExpand', 'setTreeExpand', 'isTreeExpandByRow', 'clearTreeExpand', 'clearTreeExpandReserve', 'getScroll', 'getScrollData', 'scrollTo', 'scrollToRow', 'scrollToColumn', 'clearScroll', 'updateFooter', 'updateStatus', 'setMergeCells', 'removeInsertRow', 'removeMergeCells', 'getMergeCells', 'setMergeHeaderCells', 'removeMergeHeaderCells', 'getMergeHeaderCells', 'clearMergeHeaderCells', 'clearMergeCells', 'setMergeFooterItems', 'removeMergeFooterItems', 'getMergeFooterItems', 'clearMergeFooterItems', 'getCustomStoreData', 'setRowGroupExpand', 'setRowGroupExpandByField', 'setAllRowGroupExpand', 'clearRowGroupExpand', 'isRowGroupExpandByRow', 'isRowGroupRecord', 'isAggregateRecord', 'isAggregateExpandByRow', 'getAggregateContentByRow', 'getAggregateRowChildren', 'setRowGroups', 'clearRowGroups', 'openTooltip', 'moveColumnTo', 'moveRowTo', 'getCellLabel', 'getCellElement', 'focus', 'blur', 'connect', 'connectToolbar'];
18
18
  function createInternalData() {
19
19
  return {};
20
20
  }
@@ -914,6 +914,7 @@ export default defineVxeComponent({
914
914
  if (!isInited && reactData.tableLoading) {
915
915
  return nextTick();
916
916
  }
917
+ let operPromise = null;
917
918
  let sortList = [];
918
919
  let filterList = [];
919
920
  let pageParams = {};
@@ -968,7 +969,7 @@ export default defineVxeComponent({
968
969
  else {
969
970
  if ($xeTable) {
970
971
  if (isReload) {
971
- $xeTable.clearAll();
972
+ operPromise = $xeTable.clearAll();
972
973
  }
973
974
  else {
974
975
  sortList = $xeTable.getSortColumns();
@@ -994,8 +995,10 @@ export default defineVxeComponent({
994
995
  reactData.sortData = sortList;
995
996
  reactData.filterData = filterList;
996
997
  reactData.tableLoading = true;
997
- return Promise.resolve((beforeQuery || ajaxMethods)(commitParams, ...args))
998
- .then(rest => {
998
+ return Promise.all([
999
+ Promise.resolve((beforeQuery || ajaxMethods)(commitParams, ...args)),
1000
+ operPromise
1001
+ ]).then(([rest]) => {
999
1002
  let tableData = [];
1000
1003
  reactData.tableLoading = false;
1001
1004
  if (rest) {
@@ -1021,6 +1024,7 @@ export default defineVxeComponent({
1021
1024
  }
1022
1025
  else {
1023
1026
  nextTick(() => {
1027
+ const $xeTable = refTable.value;
1024
1028
  if ($xeTable) {
1025
1029
  $xeTable.loadData(tableData);
1026
1030
  }
@@ -1379,6 +1383,7 @@ export default defineVxeComponent({
1379
1383
  * 获取需要排除的高度
1380
1384
  */
1381
1385
  getExcludeHeight() {
1386
+ const { height } = props;
1382
1387
  const { isZMax } = reactData;
1383
1388
  const el = refElem.value;
1384
1389
  if (el) {
@@ -1388,7 +1393,10 @@ export default defineVxeComponent({
1388
1393
  const bottomWrapper = refBottomWrapper.value;
1389
1394
  const pagerWrapper = refPagerWrapper.value;
1390
1395
  const parentEl = el.parentElement;
1391
- const parentPaddingSize = isZMax ? 0 : (parentEl ? getPaddingTopBottomSize(parentEl) : 0);
1396
+ let parentPaddingSize = 0;
1397
+ if (parentEl && (height === '100%' || height === 'auto')) {
1398
+ parentPaddingSize = isZMax ? 0 : getPaddingTopBottomSize(parentEl);
1399
+ }
1392
1400
  return parentPaddingSize + getPaddingTopBottomSize(el) + getOffsetHeight(formWrapper) + getOffsetHeight(toolbarWrapper) + getOffsetHeight(topWrapper) + getOffsetHeight(bottomWrapper) + getOffsetHeight(pagerWrapper);
1393
1401
  }
1394
1402
  return 0;