vxe-table 3.13.5 → 3.13.6
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.
- package/es/index.css +1 -1
- package/es/index.min.css +1 -1
- package/es/locale/lang/ar-EG.js +2 -1
- package/es/locale/lang/de-DE.js +2 -1
- package/es/locale/lang/en-US.js +2 -1
- package/es/locale/lang/es-ES.js +2 -1
- package/es/locale/lang/fr-FR.js +2 -1
- package/es/locale/lang/hu-HU.js +2 -1
- package/es/locale/lang/hy-AM.js +2 -1
- package/es/locale/lang/id-ID.js +2 -1
- package/es/locale/lang/it-IT.js +2 -1
- package/es/locale/lang/ja-JP.js +2 -1
- package/es/locale/lang/ko-KR.js +2 -1
- package/es/locale/lang/nb-NO.js +2 -1
- package/es/locale/lang/pt-BR.js +2 -1
- package/es/locale/lang/ru-RU.js +2 -1
- package/es/locale/lang/th-TH.js +2 -1
- package/es/locale/lang/ug-CN.js +2 -1
- package/es/locale/lang/uk-UA.js +2 -1
- package/es/locale/lang/vi-VN.js +2 -1
- package/es/locale/lang/zh-CHT.js +2 -1
- package/es/locale/lang/zh-CN.js +2 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/export/export-panel.js +7 -4
- package/es/table/module/export/mixin.js +2 -2
- package/es/table/src/methods.js +247 -215
- package/es/table/style.css +1 -1
- package/es/table/style.min.css +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/es/vxe-table/style.css +1 -1
- package/es/vxe-table/style.min.css +1 -1
- package/lib/index.css +1 -1
- package/lib/index.min.css +1 -1
- package/lib/index.umd.js +296 -271
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/ar-EG.js +2 -1
- package/lib/locale/lang/ar-EG.min.js +1 -1
- package/lib/locale/lang/de-DE.js +2 -1
- package/lib/locale/lang/de-DE.min.js +1 -1
- package/lib/locale/lang/en-US.js +2 -1
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +2 -1
- package/lib/locale/lang/es-ES.js +2 -1
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +2 -1
- package/lib/locale/lang/fr-FR.js +2 -1
- package/lib/locale/lang/fr-FR.min.js +1 -1
- package/lib/locale/lang/hu-HU.js +2 -1
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/hu-HU.umd.js +2 -1
- package/lib/locale/lang/hy-AM.js +2 -1
- package/lib/locale/lang/hy-AM.min.js +1 -1
- package/lib/locale/lang/id-ID.js +2 -1
- package/lib/locale/lang/id-ID.min.js +1 -1
- package/lib/locale/lang/it-IT.js +2 -1
- package/lib/locale/lang/it-IT.min.js +1 -1
- package/lib/locale/lang/ja-JP.js +2 -1
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +2 -1
- package/lib/locale/lang/ko-KR.js +2 -1
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/ko-KR.umd.js +2 -1
- package/lib/locale/lang/nb-NO.js +2 -1
- package/lib/locale/lang/nb-NO.min.js +1 -1
- package/lib/locale/lang/pt-BR.js +2 -1
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +2 -1
- package/lib/locale/lang/ru-RU.js +2 -1
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/ru-RU.umd.js +2 -1
- package/lib/locale/lang/th-TH.js +2 -1
- package/lib/locale/lang/th-TH.min.js +1 -1
- package/lib/locale/lang/ug-CN.js +2 -1
- package/lib/locale/lang/ug-CN.min.js +1 -1
- package/lib/locale/lang/uk-UA.js +2 -1
- package/lib/locale/lang/uk-UA.min.js +1 -1
- package/lib/locale/lang/uk-UA.umd.js +2 -1
- package/lib/locale/lang/vi-VN.js +2 -1
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/zh-CHT.js +2 -1
- package/lib/locale/lang/zh-CHT.min.js +1 -1
- package/lib/locale/lang/zh-CHT.umd.js +2 -1
- package/lib/locale/lang/zh-CN.js +2 -1
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +2 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/export/export-panel.js +7 -4
- package/lib/table/module/export/export-panel.min.js +1 -1
- package/lib/table/module/export/mixin.js +2 -2
- package/lib/table/module/export/mixin.min.js +1 -1
- package/lib/table/src/methods.js +283 -262
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/style/style.css +1 -1
- package/lib/table/style/style.min.css +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-table/style/style.css +1 -1
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/locale/lang/ar-EG.ts +2 -1
- package/packages/locale/lang/de-DE.ts +2 -1
- package/packages/locale/lang/en-US.ts +2 -1
- package/packages/locale/lang/es-ES.ts +2 -1
- package/packages/locale/lang/fr-FR.ts +2 -1
- package/packages/locale/lang/hu-HU.ts +2 -1
- package/packages/locale/lang/hy-AM.ts +2 -1
- package/packages/locale/lang/id-ID.ts +2 -1
- package/packages/locale/lang/it-IT.ts +2 -1
- package/packages/locale/lang/ja-JP.ts +2 -1
- package/packages/locale/lang/ko-KR.ts +2 -1
- package/packages/locale/lang/nb-NO.ts +2 -1
- package/packages/locale/lang/pt-BR.ts +2 -1
- package/packages/locale/lang/ru-RU.ts +2 -1
- package/packages/locale/lang/th-TH.ts +2 -1
- package/packages/locale/lang/ug-CN.ts +2 -1
- package/packages/locale/lang/uk-UA.ts +2 -1
- package/packages/locale/lang/vi-VN.ts +2 -1
- package/packages/locale/lang/zh-CHT.ts +2 -1
- package/packages/locale/lang/zh-CN.ts +2 -1
- package/packages/table/module/export/export-panel.ts +7 -4
- package/packages/table/module/export/mixin.ts +2 -2
- package/packages/table/src/methods.ts +264 -216
- package/styles/components/table.scss +1 -1
- /package/es/{iconfont.1740038065641.ttf → iconfont.1740103990490.ttf} +0 -0
- /package/es/{iconfont.1740038065641.woff → iconfont.1740103990490.woff} +0 -0
- /package/es/{iconfont.1740038065641.woff2 → iconfont.1740103990490.woff2} +0 -0
- /package/lib/{iconfont.1740038065641.ttf → iconfont.1740103990490.ttf} +0 -0
- /package/lib/{iconfont.1740038065641.woff → iconfont.1740103990490.woff} +0 -0
- /package/lib/{iconfont.1740038065641.woff2 → iconfont.1740103990490.woff2} +0 -0
package/lib/index.umd.js
CHANGED
|
@@ -2220,7 +2220,7 @@ function getClass(property, params) {
|
|
|
2220
2220
|
;// CONCATENATED MODULE: ./packages/ui/index.ts
|
|
2221
2221
|
|
|
2222
2222
|
|
|
2223
|
-
const version = "3.13.
|
|
2223
|
+
const version = "3.13.6";
|
|
2224
2224
|
core_.VxeUI.version = version;
|
|
2225
2225
|
core_.VxeUI.tableVersion = version;
|
|
2226
2226
|
core_.VxeUI.setConfig({
|
|
@@ -2843,7 +2843,7 @@ function isNodeElement(elem) {
|
|
|
2843
2843
|
const {
|
|
2844
2844
|
log: log_log
|
|
2845
2845
|
} = core_.VxeUI;
|
|
2846
|
-
const log_version = `table v${"3.13.
|
|
2846
|
+
const log_version = `table v${"3.13.6"}`;
|
|
2847
2847
|
const warnLog = log_log.create('warn', log_version);
|
|
2848
2848
|
const errLog = log_log.create('error', log_version);
|
|
2849
2849
|
;// CONCATENATED MODULE: ./packages/table/src/columnInfo.ts
|
|
@@ -5124,10 +5124,11 @@ const setCustomStorageMap = (id, data) => {
|
|
|
5124
5124
|
maps._v = version;
|
|
5125
5125
|
localStorage.setItem(customStorageKey, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toJSONString(maps));
|
|
5126
5126
|
};
|
|
5127
|
-
const getRecoverRowMaps = (
|
|
5127
|
+
const getRecoverRowMaps = ($xeTable, keyMaps) => {
|
|
5128
|
+
const internalData = $xeTable;
|
|
5128
5129
|
const {
|
|
5129
5130
|
fullAllDataRowIdData
|
|
5130
|
-
} =
|
|
5131
|
+
} = internalData;
|
|
5131
5132
|
const restKeys = {};
|
|
5132
5133
|
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(keyMaps, (row, rowid) => {
|
|
5133
5134
|
if (fullAllDataRowIdData[rowid]) {
|
|
@@ -5136,10 +5137,11 @@ const getRecoverRowMaps = (_vm, keyMaps) => {
|
|
|
5136
5137
|
});
|
|
5137
5138
|
return restKeys;
|
|
5138
5139
|
};
|
|
5139
|
-
function handleReserveRow(
|
|
5140
|
+
function handleReserveRow($xeTable, reserveRowMap) {
|
|
5141
|
+
const internalData = $xeTable;
|
|
5140
5142
|
const {
|
|
5141
5143
|
fullDataRowIdData
|
|
5142
|
-
} =
|
|
5144
|
+
} = internalData;
|
|
5143
5145
|
const reserveList = [];
|
|
5144
5146
|
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(reserveRowMap, (item, rowid) => {
|
|
5145
5147
|
if (fullDataRowIdData[rowid] && reserveList.indexOf(fullDataRowIdData[rowid].row) === -1) {
|
|
@@ -5929,6 +5931,253 @@ function updateStyle($xeTable) {
|
|
|
5929
5931
|
}
|
|
5930
5932
|
return $xeTable.$nextTick();
|
|
5931
5933
|
}
|
|
5934
|
+
function handleRadioReserveRow($xeTable, row) {
|
|
5935
|
+
const internalData = $xeTable;
|
|
5936
|
+
const radioOpts = $xeTable.computeRadioOpts;
|
|
5937
|
+
if (radioOpts.reserve) {
|
|
5938
|
+
internalData.radioReserveRow = row;
|
|
5939
|
+
}
|
|
5940
|
+
}
|
|
5941
|
+
function handleCheckboxReserveRow($xeTable, row, checked) {
|
|
5942
|
+
const internalData = $xeTable;
|
|
5943
|
+
const {
|
|
5944
|
+
checkboxReserveRowMap
|
|
5945
|
+
} = internalData;
|
|
5946
|
+
const checkboxOpts = $xeTable.computeCheckboxOpts;
|
|
5947
|
+
if (checkboxOpts.reserve) {
|
|
5948
|
+
const rowid = getRowid($xeTable, row);
|
|
5949
|
+
if (checked) {
|
|
5950
|
+
checkboxReserveRowMap[rowid] = row;
|
|
5951
|
+
} else if (checkboxReserveRowMap[rowid]) {
|
|
5952
|
+
delete checkboxReserveRowMap[rowid];
|
|
5953
|
+
}
|
|
5954
|
+
}
|
|
5955
|
+
}
|
|
5956
|
+
function handleCheckedRadioRow($xeTable, row, isForce) {
|
|
5957
|
+
const reactData = $xeTable;
|
|
5958
|
+
const radioOpts = $xeTable.computeRadioOpts;
|
|
5959
|
+
const {
|
|
5960
|
+
checkMethod
|
|
5961
|
+
} = radioOpts;
|
|
5962
|
+
if (row && (isForce || !checkMethod || checkMethod({
|
|
5963
|
+
row
|
|
5964
|
+
}))) {
|
|
5965
|
+
reactData.selectRadioRow = row;
|
|
5966
|
+
handleRadioReserveRow($xeTable, row);
|
|
5967
|
+
}
|
|
5968
|
+
return $xeTable.$nextTick();
|
|
5969
|
+
}
|
|
5970
|
+
function handleCheckedCheckboxRow($xeTable, rows, value, isForce) {
|
|
5971
|
+
if (rows && !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)) {
|
|
5972
|
+
rows = [rows];
|
|
5973
|
+
}
|
|
5974
|
+
$xeTable.handleBatchSelectRows(rows, !!value, isForce);
|
|
5975
|
+
$xeTable.checkSelectionStatus();
|
|
5976
|
+
return $xeTable.$nextTick();
|
|
5977
|
+
}
|
|
5978
|
+
function handleCheckedAllCheckboxRow($xeTable, checked, isForce) {
|
|
5979
|
+
const props = $xeTable;
|
|
5980
|
+
const reactData = $xeTable;
|
|
5981
|
+
const internalData = $xeTable;
|
|
5982
|
+
const {
|
|
5983
|
+
treeConfig
|
|
5984
|
+
} = props;
|
|
5985
|
+
const {
|
|
5986
|
+
selectCheckboxMaps
|
|
5987
|
+
} = reactData;
|
|
5988
|
+
const {
|
|
5989
|
+
afterFullData,
|
|
5990
|
+
checkboxReserveRowMap
|
|
5991
|
+
} = internalData;
|
|
5992
|
+
const treeOpts = $xeTable.computeTreeOpts;
|
|
5993
|
+
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
5994
|
+
const checkboxOpts = $xeTable.computeCheckboxOpts;
|
|
5995
|
+
const {
|
|
5996
|
+
checkField,
|
|
5997
|
+
reserve,
|
|
5998
|
+
checkMethod
|
|
5999
|
+
} = checkboxOpts;
|
|
6000
|
+
const indeterminateField = checkboxOpts.indeterminateField || checkboxOpts.halfField;
|
|
6001
|
+
const selectRowMaps = {};
|
|
6002
|
+
/**
|
|
6003
|
+
* 绑定属性方式(高性能,有污染)
|
|
6004
|
+
* 必须在行数据存在对应的属性,否则将不响应
|
|
6005
|
+
*/
|
|
6006
|
+
if (checkField) {
|
|
6007
|
+
const checkValFn = row => {
|
|
6008
|
+
if (isForce || !checkMethod || checkMethod({
|
|
6009
|
+
row
|
|
6010
|
+
})) {
|
|
6011
|
+
if (checked) {
|
|
6012
|
+
selectRowMaps[getRowid($xeTable, row)] = row;
|
|
6013
|
+
}
|
|
6014
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row, checkField, checked);
|
|
6015
|
+
}
|
|
6016
|
+
if (treeConfig && indeterminateField) {
|
|
6017
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row, indeterminateField, false);
|
|
6018
|
+
}
|
|
6019
|
+
};
|
|
6020
|
+
// 如果存在选中方法
|
|
6021
|
+
// 如果方法成立,则更新值,否则忽略该数据
|
|
6022
|
+
if (treeConfig) {
|
|
6023
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterFullData, checkValFn, {
|
|
6024
|
+
children: childrenField
|
|
6025
|
+
});
|
|
6026
|
+
} else {
|
|
6027
|
+
afterFullData.forEach(checkValFn);
|
|
6028
|
+
}
|
|
6029
|
+
} else {
|
|
6030
|
+
/**
|
|
6031
|
+
* 默认方式(低性能,无污染)
|
|
6032
|
+
* 无需任何属性,直接绑定
|
|
6033
|
+
*/
|
|
6034
|
+
if (treeConfig) {
|
|
6035
|
+
if (checked) {
|
|
6036
|
+
/**
|
|
6037
|
+
* 如果是树勾选
|
|
6038
|
+
* 如果方法成立,则添加到临时集合中
|
|
6039
|
+
*/
|
|
6040
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterFullData, row => {
|
|
6041
|
+
if (isForce || !checkMethod || checkMethod({
|
|
6042
|
+
row
|
|
6043
|
+
})) {
|
|
6044
|
+
selectRowMaps[getRowid($xeTable, row)] = row;
|
|
6045
|
+
}
|
|
6046
|
+
}, {
|
|
6047
|
+
children: childrenField
|
|
6048
|
+
});
|
|
6049
|
+
} else {
|
|
6050
|
+
/**
|
|
6051
|
+
* 如果是树取消
|
|
6052
|
+
* 如果方法成立,则不添加到临时集合中
|
|
6053
|
+
*/
|
|
6054
|
+
if (!isForce && checkMethod) {
|
|
6055
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterFullData, row => {
|
|
6056
|
+
const rowid = getRowid($xeTable, row);
|
|
6057
|
+
if (checkMethod({
|
|
6058
|
+
row
|
|
6059
|
+
}) ? 0 : selectCheckboxMaps[rowid]) {
|
|
6060
|
+
selectRowMaps[rowid] = row;
|
|
6061
|
+
}
|
|
6062
|
+
}, {
|
|
6063
|
+
children: childrenField
|
|
6064
|
+
});
|
|
6065
|
+
}
|
|
6066
|
+
}
|
|
6067
|
+
} else {
|
|
6068
|
+
if (checked) {
|
|
6069
|
+
/**
|
|
6070
|
+
* 如果是行勾选
|
|
6071
|
+
* 如果存在选中方法且成立或者本身已勾选,则添加到临时集合中
|
|
6072
|
+
* 如果不存在选中方法,则添加所有数据到临时集合中
|
|
6073
|
+
*/
|
|
6074
|
+
if (!isForce && checkMethod) {
|
|
6075
|
+
afterFullData.forEach(row => {
|
|
6076
|
+
const rowid = getRowid($xeTable, row);
|
|
6077
|
+
if (selectCheckboxMaps[rowid] || checkMethod({
|
|
6078
|
+
row
|
|
6079
|
+
})) {
|
|
6080
|
+
selectRowMaps[rowid] = row;
|
|
6081
|
+
}
|
|
6082
|
+
});
|
|
6083
|
+
} else {
|
|
6084
|
+
afterFullData.forEach(row => {
|
|
6085
|
+
selectRowMaps[getRowid($xeTable, row)] = row;
|
|
6086
|
+
});
|
|
6087
|
+
}
|
|
6088
|
+
} else {
|
|
6089
|
+
/**
|
|
6090
|
+
* 如果是行取消
|
|
6091
|
+
* 如果方法成立,则不添加到临时集合中;如果方法不成立则判断当前是否已勾选,如果已被勾选则添加到新集合中
|
|
6092
|
+
* 如果不存在选中方法,无需处理,临时集合默认为空
|
|
6093
|
+
*/
|
|
6094
|
+
if (!isForce && checkMethod) {
|
|
6095
|
+
afterFullData.forEach(row => {
|
|
6096
|
+
const rowid = getRowid($xeTable, row);
|
|
6097
|
+
if (checkMethod({
|
|
6098
|
+
row
|
|
6099
|
+
}) ? 0 : selectCheckboxMaps[rowid]) {
|
|
6100
|
+
selectRowMaps[rowid] = row;
|
|
6101
|
+
}
|
|
6102
|
+
});
|
|
6103
|
+
}
|
|
6104
|
+
}
|
|
6105
|
+
}
|
|
6106
|
+
}
|
|
6107
|
+
if (reserve) {
|
|
6108
|
+
if (checked) {
|
|
6109
|
+
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(selectRowMaps, (row, rowid) => {
|
|
6110
|
+
checkboxReserveRowMap[rowid] = row;
|
|
6111
|
+
});
|
|
6112
|
+
} else {
|
|
6113
|
+
afterFullData.forEach(row => handleCheckboxReserveRow($xeTable, row, false));
|
|
6114
|
+
}
|
|
6115
|
+
}
|
|
6116
|
+
reactData.selectCheckboxMaps = checkField ? {} : selectRowMaps;
|
|
6117
|
+
reactData.isAllSelected = checked;
|
|
6118
|
+
reactData.isIndeterminate = false;
|
|
6119
|
+
reactData.treeIndeterminateMaps = {};
|
|
6120
|
+
internalData.treeIndeterminateRowMaps = {};
|
|
6121
|
+
$xeTable.checkSelectionStatus();
|
|
6122
|
+
return $xeTable.$nextTick();
|
|
6123
|
+
}
|
|
6124
|
+
// 还原展开、选中等相关状态
|
|
6125
|
+
function handleReserveStatus($xeTable) {
|
|
6126
|
+
const props = $xeTable;
|
|
6127
|
+
const reactData = $xeTable;
|
|
6128
|
+
const internalData = $xeTable;
|
|
6129
|
+
const {
|
|
6130
|
+
treeConfig
|
|
6131
|
+
} = props;
|
|
6132
|
+
const {
|
|
6133
|
+
expandColumn,
|
|
6134
|
+
currentRow,
|
|
6135
|
+
selectCheckboxMaps,
|
|
6136
|
+
selectRadioRow,
|
|
6137
|
+
rowExpandedMaps,
|
|
6138
|
+
treeExpandedMaps
|
|
6139
|
+
} = reactData;
|
|
6140
|
+
const {
|
|
6141
|
+
fullDataRowIdData,
|
|
6142
|
+
fullAllDataRowIdData,
|
|
6143
|
+
radioReserveRow
|
|
6144
|
+
} = internalData;
|
|
6145
|
+
const expandOpts = $xeTable.computeExpandOpts;
|
|
6146
|
+
const treeOpts = $xeTable.computeTreeOpts;
|
|
6147
|
+
const radioOpts = $xeTable.computeRadioOpts;
|
|
6148
|
+
const checkboxOpts = $xeTable.computeCheckboxOpts;
|
|
6149
|
+
// 单选框
|
|
6150
|
+
if (selectRadioRow && !fullAllDataRowIdData[getRowid($xeTable, selectRadioRow)]) {
|
|
6151
|
+
reactData.selectRadioRow = null; // 刷新单选行状态
|
|
6152
|
+
}
|
|
6153
|
+
// 还原保留选中状态
|
|
6154
|
+
if (radioOpts.reserve && radioReserveRow) {
|
|
6155
|
+
const rowid = getRowid($xeTable, radioReserveRow);
|
|
6156
|
+
if (fullDataRowIdData[rowid]) {
|
|
6157
|
+
handleCheckedRadioRow($xeTable, fullDataRowIdData[rowid].row, true);
|
|
6158
|
+
}
|
|
6159
|
+
}
|
|
6160
|
+
// 复选框
|
|
6161
|
+
reactData.selectCheckboxMaps = getRecoverRowMaps($xeTable, selectCheckboxMaps); // 刷新多选行状态
|
|
6162
|
+
// 还原保留选中状态
|
|
6163
|
+
if (checkboxOpts.reserve) {
|
|
6164
|
+
handleCheckedCheckboxRow($xeTable, handleReserveRow($xeTable, internalData.checkboxReserveRowMap), true, true);
|
|
6165
|
+
}
|
|
6166
|
+
if (currentRow && !fullAllDataRowIdData[getRowid($xeTable, currentRow)]) {
|
|
6167
|
+
reactData.currentRow = null; // 刷新当前行状态
|
|
6168
|
+
}
|
|
6169
|
+
// 行展开
|
|
6170
|
+
reactData.rowExpandedMaps = expandColumn ? getRecoverRowMaps($xeTable, rowExpandedMaps) : {}; // 刷新行展开状态
|
|
6171
|
+
// 还原保留状态
|
|
6172
|
+
if (expandColumn && expandOpts.reserve) {
|
|
6173
|
+
$xeTable.setRowExpand(handleReserveRow($xeTable, internalData.rowExpandedReserveRowMap), true);
|
|
6174
|
+
}
|
|
6175
|
+
// 树展开
|
|
6176
|
+
reactData.treeExpandedMaps = treeConfig ? getRecoverRowMaps($xeTable, treeExpandedMaps) : {}; // 刷新树展开状态
|
|
6177
|
+
if (treeConfig && treeOpts.reserve) {
|
|
6178
|
+
$xeTable.setTreeExpand(handleReserveRow($xeTable, internalData.treeExpandedReserveRowMap), true);
|
|
6179
|
+
}
|
|
6180
|
+
}
|
|
5932
6181
|
function calcVarRowHeightConfig($xeTable, sizeKey, sizeEl) {
|
|
5933
6182
|
const reactData = $xeTable;
|
|
5934
6183
|
const {
|
|
@@ -7572,7 +7821,7 @@ const Methods = {
|
|
|
7572
7821
|
}
|
|
7573
7822
|
}
|
|
7574
7823
|
}
|
|
7575
|
-
|
|
7824
|
+
handleReserveStatus($xeTable);
|
|
7576
7825
|
this.checkSelectionStatus();
|
|
7577
7826
|
return new Promise(resolve => {
|
|
7578
7827
|
this.$nextTick().then(() => this.recalculate()).then(() => {
|
|
@@ -10846,6 +11095,7 @@ const Methods = {
|
|
|
10846
11095
|
* 处理默认勾选
|
|
10847
11096
|
*/
|
|
10848
11097
|
handleDefaultSelectionChecked() {
|
|
11098
|
+
const $xeTable = this;
|
|
10849
11099
|
const {
|
|
10850
11100
|
fullDataRowIdData,
|
|
10851
11101
|
checkboxOpts
|
|
@@ -10855,7 +11105,7 @@ const Methods = {
|
|
|
10855
11105
|
checkRowKeys
|
|
10856
11106
|
} = checkboxOpts;
|
|
10857
11107
|
if (checkAll) {
|
|
10858
|
-
|
|
11108
|
+
handleCheckedAllCheckboxRow($xeTable, true, true);
|
|
10859
11109
|
} else if (checkRowKeys) {
|
|
10860
11110
|
const defSelection = [];
|
|
10861
11111
|
checkRowKeys.forEach(rowid => {
|
|
@@ -10863,17 +11113,12 @@ const Methods = {
|
|
|
10863
11113
|
defSelection.push(fullDataRowIdData[rowid].row);
|
|
10864
11114
|
}
|
|
10865
11115
|
});
|
|
10866
|
-
|
|
11116
|
+
handleCheckedCheckboxRow($xeTable, defSelection, true, true);
|
|
10867
11117
|
}
|
|
10868
11118
|
},
|
|
10869
11119
|
handleCheckedCheckboxRow(rows, value, isForce) {
|
|
10870
11120
|
const $xeTable = this;
|
|
10871
|
-
|
|
10872
|
-
rows = [rows];
|
|
10873
|
-
}
|
|
10874
|
-
$xeTable.handleBatchSelectRows(rows, !!value, isForce);
|
|
10875
|
-
$xeTable.checkSelectionStatus();
|
|
10876
|
-
return this.$nextTick();
|
|
11121
|
+
return handleCheckedCheckboxRow($xeTable, rows, value, isForce);
|
|
10877
11122
|
},
|
|
10878
11123
|
/**
|
|
10879
11124
|
* 用于多选行,设置行为选中状态,第二个参数为选中与否
|
|
@@ -10885,7 +11130,7 @@ const Methods = {
|
|
|
10885
11130
|
if (rows && !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rows)) {
|
|
10886
11131
|
rows = [rows];
|
|
10887
11132
|
}
|
|
10888
|
-
return $xeTable
|
|
11133
|
+
return handleCheckedCheckboxRow($xeTable, rows, checked, true);
|
|
10889
11134
|
},
|
|
10890
11135
|
setCheckboxRowKey(keys, checked) {
|
|
10891
11136
|
const $xeTable = this;
|
|
@@ -10903,7 +11148,7 @@ const Methods = {
|
|
|
10903
11148
|
rows.push(rowRest.row);
|
|
10904
11149
|
}
|
|
10905
11150
|
});
|
|
10906
|
-
return $xeTable
|
|
11151
|
+
return handleCheckedCheckboxRow($xeTable, rows, checked, true);
|
|
10907
11152
|
},
|
|
10908
11153
|
isCheckedByCheckboxRow(row) {
|
|
10909
11154
|
const $xeTable = this;
|
|
@@ -10999,7 +11244,7 @@ const Methods = {
|
|
|
10999
11244
|
if (indeterminateField) {
|
|
11000
11245
|
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row, indeterminateField, false);
|
|
11001
11246
|
}
|
|
11002
|
-
$xeTable
|
|
11247
|
+
handleCheckboxReserveRow($xeTable, row, checked);
|
|
11003
11248
|
}
|
|
11004
11249
|
}, {
|
|
11005
11250
|
children: transform ? mapChildrenField : childrenField
|
|
@@ -11013,7 +11258,7 @@ const Methods = {
|
|
|
11013
11258
|
row
|
|
11014
11259
|
})) {
|
|
11015
11260
|
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row, checkField, checked);
|
|
11016
|
-
$xeTable
|
|
11261
|
+
handleCheckboxReserveRow($xeTable, row, checked);
|
|
11017
11262
|
}
|
|
11018
11263
|
});
|
|
11019
11264
|
}
|
|
@@ -11035,7 +11280,7 @@ const Methods = {
|
|
|
11035
11280
|
delete selectRowMaps[rowid];
|
|
11036
11281
|
}
|
|
11037
11282
|
}
|
|
11038
|
-
$xeTable
|
|
11283
|
+
handleCheckboxReserveRow($xeTable, row, checked);
|
|
11039
11284
|
}
|
|
11040
11285
|
}, {
|
|
11041
11286
|
children: transform ? mapChildrenField : childrenField
|
|
@@ -11058,7 +11303,7 @@ const Methods = {
|
|
|
11058
11303
|
delete selectRowMaps[rowid];
|
|
11059
11304
|
}
|
|
11060
11305
|
}
|
|
11061
|
-
$xeTable
|
|
11306
|
+
handleCheckboxReserveRow($xeTable, row, checked);
|
|
11062
11307
|
}
|
|
11063
11308
|
});
|
|
11064
11309
|
reactData.selectCheckboxMaps = selectRowMaps;
|
|
@@ -11102,6 +11347,7 @@ const Methods = {
|
|
|
11102
11347
|
}
|
|
11103
11348
|
},
|
|
11104
11349
|
triggerCheckRowEvent(evnt, params, checked) {
|
|
11350
|
+
const $xeTable = this;
|
|
11105
11351
|
const {
|
|
11106
11352
|
checkboxOpts,
|
|
11107
11353
|
afterFullData
|
|
@@ -11126,7 +11372,7 @@ const Methods = {
|
|
|
11126
11372
|
if (_rowIndex !== _firstRowIndex) {
|
|
11127
11373
|
this.setAllCheckboxRow(false);
|
|
11128
11374
|
const rangeRows = _rowIndex < _firstRowIndex ? afterFullData.slice(_rowIndex, _firstRowIndex + 1) : afterFullData.slice(_firstRowIndex, _rowIndex + 1);
|
|
11129
|
-
|
|
11375
|
+
handleCheckedCheckboxRow($xeTable, rangeRows, true, false);
|
|
11130
11376
|
this.emitEvent('checkbox-range-select', Object.assign({
|
|
11131
11377
|
rangeRecords: rangeRows
|
|
11132
11378
|
}, params), evnt);
|
|
@@ -11164,168 +11410,13 @@ const Methods = {
|
|
|
11164
11410
|
$xeTable.checkSelectionStatus();
|
|
11165
11411
|
return $xeTable.$nextTick();
|
|
11166
11412
|
},
|
|
11167
|
-
handleCheckedAllCheckboxRow(checked, isForce) {
|
|
11168
|
-
const $xeTable = this;
|
|
11169
|
-
const reactData = $xeTable;
|
|
11170
|
-
const {
|
|
11171
|
-
afterFullData,
|
|
11172
|
-
treeConfig,
|
|
11173
|
-
treeOpts,
|
|
11174
|
-
selectCheckboxMaps,
|
|
11175
|
-
checkboxReserveRowMap,
|
|
11176
|
-
checkboxOpts,
|
|
11177
|
-
afterFullRowMaps
|
|
11178
|
-
} = this;
|
|
11179
|
-
const {
|
|
11180
|
-
checkField,
|
|
11181
|
-
reserve,
|
|
11182
|
-
checkStrictly,
|
|
11183
|
-
checkMethod
|
|
11184
|
-
} = checkboxOpts;
|
|
11185
|
-
const indeterminateField = checkboxOpts.indeterminateField || checkboxOpts.halfField;
|
|
11186
|
-
const childrenField = treeOpts.children || treeOpts.childrenField;
|
|
11187
|
-
const selectRowMaps = {};
|
|
11188
|
-
// 疑惑!
|
|
11189
|
-
if (!treeConfig) {
|
|
11190
|
-
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(selectCheckboxMaps, (row, rowid) => {
|
|
11191
|
-
if (!afterFullRowMaps[rowid]) {
|
|
11192
|
-
selectRowMaps[rowid] = row;
|
|
11193
|
-
}
|
|
11194
|
-
});
|
|
11195
|
-
}
|
|
11196
|
-
// 疑惑!
|
|
11197
|
-
if (checkStrictly) {
|
|
11198
|
-
this.isAllSelected = checked;
|
|
11199
|
-
} else {
|
|
11200
|
-
/**
|
|
11201
|
-
* 绑定属性方式(高性能,有污染)
|
|
11202
|
-
* 必须在行数据存在对应的属性,否则将不响应
|
|
11203
|
-
*/
|
|
11204
|
-
if (checkField) {
|
|
11205
|
-
const checkValFn = row => {
|
|
11206
|
-
if (isForce || !checkMethod || checkMethod({
|
|
11207
|
-
row
|
|
11208
|
-
})) {
|
|
11209
|
-
if (checked) {
|
|
11210
|
-
selectRowMaps[getRowid(this, row)] = row;
|
|
11211
|
-
}
|
|
11212
|
-
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row, checkField, checked);
|
|
11213
|
-
}
|
|
11214
|
-
if (treeConfig && indeterminateField) {
|
|
11215
|
-
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().set(row, indeterminateField, false);
|
|
11216
|
-
}
|
|
11217
|
-
};
|
|
11218
|
-
// 如果存在选中方法
|
|
11219
|
-
// 如果方法成立,则更新值,否则忽略该数据
|
|
11220
|
-
if (treeConfig) {
|
|
11221
|
-
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterFullData, checkValFn, {
|
|
11222
|
-
children: childrenField
|
|
11223
|
-
});
|
|
11224
|
-
} else {
|
|
11225
|
-
afterFullData.forEach(checkValFn);
|
|
11226
|
-
}
|
|
11227
|
-
} else {
|
|
11228
|
-
/**
|
|
11229
|
-
* 默认方式(低性能,无污染)
|
|
11230
|
-
* 无需任何属性,直接绑定
|
|
11231
|
-
*/
|
|
11232
|
-
if (treeConfig) {
|
|
11233
|
-
if (checked) {
|
|
11234
|
-
/**
|
|
11235
|
-
* 如果是树勾选
|
|
11236
|
-
* 如果方法成立,则添加到临时集合中
|
|
11237
|
-
*/
|
|
11238
|
-
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterFullData, row => {
|
|
11239
|
-
if (isForce || !checkMethod || checkMethod({
|
|
11240
|
-
row
|
|
11241
|
-
})) {
|
|
11242
|
-
selectRowMaps[getRowid(this, row)] = row;
|
|
11243
|
-
}
|
|
11244
|
-
}, {
|
|
11245
|
-
children: childrenField
|
|
11246
|
-
});
|
|
11247
|
-
} else {
|
|
11248
|
-
/**
|
|
11249
|
-
* 如果是树取消
|
|
11250
|
-
* 如果方法成立,则不添加到临时集合中
|
|
11251
|
-
*/
|
|
11252
|
-
if (!isForce && checkMethod) {
|
|
11253
|
-
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterFullData, row => {
|
|
11254
|
-
const rowid = getRowid(this, row);
|
|
11255
|
-
if (checkMethod({
|
|
11256
|
-
row
|
|
11257
|
-
}) ? 0 : selectCheckboxMaps[rowid]) {
|
|
11258
|
-
selectRowMaps[rowid] = row;
|
|
11259
|
-
}
|
|
11260
|
-
}, {
|
|
11261
|
-
children: childrenField
|
|
11262
|
-
});
|
|
11263
|
-
}
|
|
11264
|
-
}
|
|
11265
|
-
} else {
|
|
11266
|
-
if (checked) {
|
|
11267
|
-
/**
|
|
11268
|
-
* 如果是行勾选
|
|
11269
|
-
* 如果存在选中方法且成立或者本身已勾选,则添加到临时集合中
|
|
11270
|
-
* 如果不存在选中方法,则添加所有数据到临时集合中
|
|
11271
|
-
*/
|
|
11272
|
-
if (!isForce && checkMethod) {
|
|
11273
|
-
afterFullData.forEach(row => {
|
|
11274
|
-
const rowid = getRowid(this, row);
|
|
11275
|
-
if (selectCheckboxMaps[rowid] || checkMethod({
|
|
11276
|
-
row
|
|
11277
|
-
})) {
|
|
11278
|
-
selectRowMaps[rowid] = row;
|
|
11279
|
-
}
|
|
11280
|
-
});
|
|
11281
|
-
} else {
|
|
11282
|
-
afterFullData.forEach(row => {
|
|
11283
|
-
selectRowMaps[getRowid(this, row)] = row;
|
|
11284
|
-
});
|
|
11285
|
-
}
|
|
11286
|
-
} else {
|
|
11287
|
-
/**
|
|
11288
|
-
* 如果是行取消
|
|
11289
|
-
* 如果方法成立,则不添加到临时集合中;如果方法不成立则判断当前是否已勾选,如果已被勾选则添加到新集合中
|
|
11290
|
-
* 如果不存在选中方法,无需处理,临时集合默认为空
|
|
11291
|
-
*/
|
|
11292
|
-
if (!isForce && checkMethod) {
|
|
11293
|
-
afterFullData.forEach(row => {
|
|
11294
|
-
const rowid = getRowid(this, row);
|
|
11295
|
-
if (checkMethod({
|
|
11296
|
-
row
|
|
11297
|
-
}) ? 0 : selectCheckboxMaps[rowid]) {
|
|
11298
|
-
selectRowMaps[rowid] = row;
|
|
11299
|
-
}
|
|
11300
|
-
});
|
|
11301
|
-
}
|
|
11302
|
-
}
|
|
11303
|
-
}
|
|
11304
|
-
}
|
|
11305
|
-
if (reserve) {
|
|
11306
|
-
if (checked) {
|
|
11307
|
-
external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().each(selectRowMaps, (row, rowid) => {
|
|
11308
|
-
checkboxReserveRowMap[rowid] = row;
|
|
11309
|
-
});
|
|
11310
|
-
} else {
|
|
11311
|
-
afterFullData.forEach(row => this.handleCheckboxReserveRow(row, false));
|
|
11312
|
-
}
|
|
11313
|
-
}
|
|
11314
|
-
this.selectCheckboxMaps = checkField ? {} : selectRowMaps;
|
|
11315
|
-
}
|
|
11316
|
-
reactData.isAllSelected = checked;
|
|
11317
|
-
reactData.isIndeterminate = false;
|
|
11318
|
-
this.treeIndeterminateMaps = {};
|
|
11319
|
-
this.treeIndeterminateRowMaps = {};
|
|
11320
|
-
this.checkSelectionStatus();
|
|
11321
|
-
return this.$nextTick();
|
|
11322
|
-
},
|
|
11323
11413
|
/**
|
|
11324
11414
|
* 用于多选行,设置所有行的选中状态
|
|
11325
11415
|
* @param {Boolean} value 是否选中
|
|
11326
11416
|
*/
|
|
11327
11417
|
setAllCheckboxRow(value) {
|
|
11328
|
-
|
|
11418
|
+
const $xeTable = this;
|
|
11419
|
+
return handleCheckedAllCheckboxRow($xeTable, value, true);
|
|
11329
11420
|
},
|
|
11330
11421
|
updateCheckboxStatus() {
|
|
11331
11422
|
const $xeTable = this;
|
|
@@ -11504,57 +11595,6 @@ const Methods = {
|
|
|
11504
11595
|
$xeTable.updateCheckboxStatus();
|
|
11505
11596
|
$xeTable.updateAllCheckboxStatus();
|
|
11506
11597
|
},
|
|
11507
|
-
// 还原展开、选中等相关状态
|
|
11508
|
-
handleReserveStatus() {
|
|
11509
|
-
const $xeTable = this;
|
|
11510
|
-
const {
|
|
11511
|
-
expandColumn,
|
|
11512
|
-
treeOpts,
|
|
11513
|
-
treeConfig,
|
|
11514
|
-
fullDataRowIdData,
|
|
11515
|
-
fullAllDataRowIdData,
|
|
11516
|
-
currentRow,
|
|
11517
|
-
selectRadioRow,
|
|
11518
|
-
radioReserveRow,
|
|
11519
|
-
radioOpts,
|
|
11520
|
-
checkboxOpts,
|
|
11521
|
-
selectCheckboxMaps,
|
|
11522
|
-
rowExpandedMaps,
|
|
11523
|
-
treeExpandedMaps,
|
|
11524
|
-
expandOpts
|
|
11525
|
-
} = this;
|
|
11526
|
-
// 单选框
|
|
11527
|
-
if (selectRadioRow && !fullAllDataRowIdData[getRowid($xeTable, selectRadioRow)]) {
|
|
11528
|
-
this.selectRadioRow = null; // 刷新单选行状态
|
|
11529
|
-
}
|
|
11530
|
-
// 还原保留选中状态
|
|
11531
|
-
if (radioOpts.reserve && radioReserveRow) {
|
|
11532
|
-
const rowid = getRowid(this, radioReserveRow);
|
|
11533
|
-
if (fullDataRowIdData[rowid]) {
|
|
11534
|
-
this.handleCheckedRadioRow(fullDataRowIdData[rowid].row, true);
|
|
11535
|
-
}
|
|
11536
|
-
}
|
|
11537
|
-
// 复选框
|
|
11538
|
-
this.selectCheckboxMaps = getRecoverRowMaps(this, selectCheckboxMaps); // 刷新多选行状态
|
|
11539
|
-
// 还原保留选中状态
|
|
11540
|
-
if (checkboxOpts.reserve) {
|
|
11541
|
-
this.handleCheckedCheckboxRow(handleReserveRow(this, this.checkboxReserveRowMap), true, true);
|
|
11542
|
-
}
|
|
11543
|
-
if (currentRow && !this.fullAllDataRowIdData[getRowid($xeTable, currentRow)]) {
|
|
11544
|
-
this.currentRow = null; // 刷新当前行状态
|
|
11545
|
-
}
|
|
11546
|
-
// 行展开
|
|
11547
|
-
this.rowExpandedMaps = expandColumn ? getRecoverRowMaps(this, rowExpandedMaps) : []; // 刷新行展开状态
|
|
11548
|
-
// 还原保留状态
|
|
11549
|
-
if (expandColumn && expandOpts.reserve) {
|
|
11550
|
-
this.setRowExpand(handleReserveRow(this, this.rowExpandedReserveRowMap), true);
|
|
11551
|
-
}
|
|
11552
|
-
// 树展开
|
|
11553
|
-
this.treeExpandedMaps = treeConfig ? getRecoverRowMaps(this, treeExpandedMaps) : []; // 刷新树展开状态
|
|
11554
|
-
if (treeConfig && treeOpts.reserve) {
|
|
11555
|
-
this.setTreeExpand(handleReserveRow(this, this.treeExpandedReserveRowMap), true);
|
|
11556
|
-
}
|
|
11557
|
-
},
|
|
11558
11598
|
/**
|
|
11559
11599
|
* 获取单选框保留选中的行
|
|
11560
11600
|
*/
|
|
@@ -11596,14 +11636,6 @@ const Methods = {
|
|
|
11596
11636
|
this.radioReserveRow = null;
|
|
11597
11637
|
return this.$nextTick();
|
|
11598
11638
|
},
|
|
11599
|
-
handleRadioReserveRow(row) {
|
|
11600
|
-
const {
|
|
11601
|
-
radioOpts
|
|
11602
|
-
} = this;
|
|
11603
|
-
if (radioOpts.reserve) {
|
|
11604
|
-
this.radioReserveRow = row;
|
|
11605
|
-
}
|
|
11606
|
-
},
|
|
11607
11639
|
/**
|
|
11608
11640
|
* 获取复选框保留选中的行
|
|
11609
11641
|
*/
|
|
@@ -11666,12 +11698,13 @@ const Methods = {
|
|
|
11666
11698
|
}
|
|
11667
11699
|
},
|
|
11668
11700
|
handleCheckAllEvent(evnt, value) {
|
|
11669
|
-
this
|
|
11701
|
+
const $xeTable = this;
|
|
11702
|
+
handleCheckedAllCheckboxRow($xeTable, value);
|
|
11670
11703
|
if (evnt) {
|
|
11671
|
-
|
|
11672
|
-
records:
|
|
11673
|
-
reserves:
|
|
11674
|
-
indeterminates:
|
|
11704
|
+
$xeTable.dispatchEvent('checkbox-all', {
|
|
11705
|
+
records: $xeTable.getCheckboxRecords(),
|
|
11706
|
+
reserves: $xeTable.getCheckboxReserveRecords(),
|
|
11707
|
+
indeterminates: $xeTable.getCheckboxIndeterminateRecords(),
|
|
11675
11708
|
checked: value
|
|
11676
11709
|
}, evnt);
|
|
11677
11710
|
}
|
|
@@ -11680,6 +11713,7 @@ const Methods = {
|
|
|
11680
11713
|
* 多选,选中所有事件
|
|
11681
11714
|
*/
|
|
11682
11715
|
triggerCheckAllEvent(evnt, value) {
|
|
11716
|
+
const $xeTable = this;
|
|
11683
11717
|
const {
|
|
11684
11718
|
checkboxOpts
|
|
11685
11719
|
} = this;
|
|
@@ -11692,7 +11726,7 @@ const Methods = {
|
|
|
11692
11726
|
if (evnt) {
|
|
11693
11727
|
evnt.stopPropagation();
|
|
11694
11728
|
}
|
|
11695
|
-
|
|
11729
|
+
$xeTable.handleCheckAllEvent(evnt, value);
|
|
11696
11730
|
},
|
|
11697
11731
|
/**
|
|
11698
11732
|
* 多选,切换所有行的选中状态
|
|
@@ -11746,6 +11780,7 @@ const Methods = {
|
|
|
11746
11780
|
* 处理单选框默认勾选
|
|
11747
11781
|
*/
|
|
11748
11782
|
handleDefaultRadioChecked() {
|
|
11783
|
+
const $xeTable = this;
|
|
11749
11784
|
const {
|
|
11750
11785
|
radioOpts,
|
|
11751
11786
|
fullDataRowIdData
|
|
@@ -11756,7 +11791,7 @@ const Methods = {
|
|
|
11756
11791
|
} = radioOpts;
|
|
11757
11792
|
if (rowid) {
|
|
11758
11793
|
if (fullDataRowIdData[rowid]) {
|
|
11759
|
-
|
|
11794
|
+
handleCheckedRadioRow($xeTable, fullDataRowIdData[rowid].row, true);
|
|
11760
11795
|
}
|
|
11761
11796
|
if (reserve) {
|
|
11762
11797
|
const rowkey = getRowkey(this);
|
|
@@ -11770,6 +11805,7 @@ const Methods = {
|
|
|
11770
11805
|
* 单选,行选中事件
|
|
11771
11806
|
*/
|
|
11772
11807
|
triggerRadioRowEvent(evnt, params) {
|
|
11808
|
+
const $xeTable = this;
|
|
11773
11809
|
const {
|
|
11774
11810
|
selectRadioRow: oldValue,
|
|
11775
11811
|
radioOpts
|
|
@@ -11787,7 +11823,7 @@ const Methods = {
|
|
|
11787
11823
|
let newValue = row;
|
|
11788
11824
|
let isChange = oldValue !== newValue;
|
|
11789
11825
|
if (isChange) {
|
|
11790
|
-
|
|
11826
|
+
handleCheckedRadioRow($xeTable, newValue);
|
|
11791
11827
|
} else if (!radioOpts.strict) {
|
|
11792
11828
|
isChange = oldValue === newValue;
|
|
11793
11829
|
if (isChange) {
|
|
@@ -11886,28 +11922,13 @@ const Methods = {
|
|
|
11886
11922
|
}
|
|
11887
11923
|
return false;
|
|
11888
11924
|
},
|
|
11889
|
-
handleCheckedRadioRow(row, isForce) {
|
|
11890
|
-
const {
|
|
11891
|
-
radioOpts
|
|
11892
|
-
} = this;
|
|
11893
|
-
const {
|
|
11894
|
-
checkMethod
|
|
11895
|
-
} = radioOpts;
|
|
11896
|
-
if (row && (isForce || !checkMethod || checkMethod({
|
|
11897
|
-
row
|
|
11898
|
-
}))) {
|
|
11899
|
-
this.selectRadioRow = row;
|
|
11900
|
-
this.handleRadioReserveRow(row);
|
|
11901
|
-
}
|
|
11902
|
-
return this.$nextTick();
|
|
11903
|
-
},
|
|
11904
11925
|
/**
|
|
11905
11926
|
* 用于单选行,设置某一行为选中状态
|
|
11906
11927
|
* @param {Row} row 行对象
|
|
11907
11928
|
*/
|
|
11908
11929
|
setRadioRow(row) {
|
|
11909
11930
|
const $xeTable = this;
|
|
11910
|
-
return $xeTable
|
|
11931
|
+
return handleCheckedRadioRow($xeTable, row, true);
|
|
11911
11932
|
},
|
|
11912
11933
|
/**
|
|
11913
11934
|
* 用于单选行,设置某一行为选中状态
|
|
@@ -11921,7 +11942,7 @@ const Methods = {
|
|
|
11921
11942
|
} = internalData;
|
|
11922
11943
|
const rowRest = fullAllDataRowIdData[rowid];
|
|
11923
11944
|
if (rowRest) {
|
|
11924
|
-
return $xeTable
|
|
11945
|
+
return handleCheckedRadioRow($xeTable, rowRest.row, true);
|
|
11925
11946
|
}
|
|
11926
11947
|
return $xeTable.$nextTick();
|
|
11927
11948
|
},
|
|
@@ -14019,7 +14040,7 @@ const Methods = {
|
|
|
14019
14040
|
}
|
|
14020
14041
|
// 如果当前节点已选中,则展开后子节点也被选中
|
|
14021
14042
|
if (!checkStrictly && this.isCheckedByCheckboxRow(row)) {
|
|
14022
|
-
|
|
14043
|
+
handleCheckedCheckboxRow($xeTable, childRows, true);
|
|
14023
14044
|
}
|
|
14024
14045
|
return this.$nextTick().then(() => {
|
|
14025
14046
|
if (transform) {
|
|
@@ -19357,6 +19378,7 @@ const {
|
|
|
19357
19378
|
columns,
|
|
19358
19379
|
params: defaultOptions.params
|
|
19359
19380
|
};
|
|
19381
|
+
const hasEmptyData = defaultOptions.mode === 'empty';
|
|
19360
19382
|
return h('div', {
|
|
19361
19383
|
class: 'vxe-table-export--panel'
|
|
19362
19384
|
}, [topSlot ? h('div', {
|
|
@@ -19443,7 +19465,8 @@ const {
|
|
|
19443
19465
|
class: 'vxe-table-export--panel-option-row'
|
|
19444
19466
|
}, [h('vxe-checkbox', {
|
|
19445
19467
|
props: {
|
|
19446
|
-
value: isHeader,
|
|
19468
|
+
value: hasEmptyData || isHeader,
|
|
19469
|
+
disabled: hasEmptyData,
|
|
19447
19470
|
title: export_panel_getI18n('vxe.export.expHeaderTitle'),
|
|
19448
19471
|
content: export_panel_getI18n('vxe.export.expOptHeader')
|
|
19449
19472
|
},
|
|
@@ -19466,7 +19489,8 @@ const {
|
|
|
19466
19489
|
}
|
|
19467
19490
|
}), h('vxe-checkbox', {
|
|
19468
19491
|
props: {
|
|
19469
|
-
value: defaultOptions.original,
|
|
19492
|
+
value: hasEmptyData ? false : defaultOptions.original,
|
|
19493
|
+
disabled: hasEmptyData,
|
|
19470
19494
|
title: export_panel_getI18n('vxe.export.expOriginalTitle'),
|
|
19471
19495
|
content: export_panel_getI18n('vxe.export.expOptOriginal')
|
|
19472
19496
|
},
|
|
@@ -19494,7 +19518,7 @@ const {
|
|
|
19494
19518
|
}), h('vxe-checkbox', {
|
|
19495
19519
|
props: {
|
|
19496
19520
|
value: hasMerge && supportMerge && checkedAll ? defaultOptions.isMerge : false,
|
|
19497
|
-
disabled: !hasMerge || !supportMerge || !checkedAll,
|
|
19521
|
+
disabled: hasEmptyData || !hasMerge || !supportMerge || !checkedAll,
|
|
19498
19522
|
title: export_panel_getI18n('vxe.export.expMergeTitle'),
|
|
19499
19523
|
content: export_panel_getI18n('vxe.export.expOptMerge')
|
|
19500
19524
|
},
|
|
@@ -19518,7 +19542,7 @@ const {
|
|
|
19518
19542
|
}), h('vxe-checkbox', {
|
|
19519
19543
|
props: {
|
|
19520
19544
|
value: hasTree ? defaultOptions.isAllExpand : false,
|
|
19521
|
-
disabled: !hasTree,
|
|
19545
|
+
disabled: hasEmptyData || !hasTree,
|
|
19522
19546
|
title: export_panel_getI18n('vxe.export.expAllExpandTitle'),
|
|
19523
19547
|
content: export_panel_getI18n('vxe.export.expOptAllExpand')
|
|
19524
19548
|
},
|
|
@@ -22997,7 +23021,7 @@ function handleExportAndPrint($xeTable, options, isPrint) {
|
|
|
22997
23021
|
isMerge: hasMerge,
|
|
22998
23022
|
useStyle: true,
|
|
22999
23023
|
current: 'current',
|
|
23000
|
-
modes: ['current', 'selected'].concat(proxyOpts.ajax && proxyOpts.ajax.queryAll ? ['all'] : [])
|
|
23024
|
+
modes: ['current', 'selected', 'empty'].concat(proxyOpts.ajax && proxyOpts.ajax.queryAll ? ['all'] : [])
|
|
23001
23025
|
}, options);
|
|
23002
23026
|
const types = defOpts.types || external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().keys(exportOpts._typeMaps);
|
|
23003
23027
|
const modes = defOpts.modes || [];
|
|
@@ -23189,7 +23213,7 @@ const convertToRows = originColumns => {
|
|
|
23189
23213
|
isMerge: hasMerge,
|
|
23190
23214
|
useStyle: true,
|
|
23191
23215
|
current: 'current',
|
|
23192
|
-
modes: ['current', 'selected'].concat(proxyOpts.ajax && proxyOpts.ajax.queryAll ? ['all'] : []),
|
|
23216
|
+
modes: ['current', 'selected', 'empty'].concat(proxyOpts.ajax && proxyOpts.ajax.queryAll ? ['all'] : []),
|
|
23193
23217
|
download: true,
|
|
23194
23218
|
type: 'csv'
|
|
23195
23219
|
// filename: '',
|
|
@@ -30742,7 +30766,7 @@ const Toolbar = VxeToolbar;
|
|
|
30742
30766
|
treeNotImp: '树表格不支持导入',
|
|
30743
30767
|
treeCrossDrag: '只能拖拽第一层级',
|
|
30744
30768
|
treeDragChild: '父级不能拖拽到自己的子级中',
|
|
30745
|
-
reqPlugin: '
|
|
30769
|
+
reqPlugin: '扩展插件未安装 "{1}" https://vxeui.com/other{0}/#/{1}/install'
|
|
30746
30770
|
},
|
|
30747
30771
|
table: {
|
|
30748
30772
|
emptyText: '暂无数据',
|
|
@@ -30862,6 +30886,7 @@ const Toolbar = VxeToolbar;
|
|
|
30862
30886
|
pdf: 'PDF (*.pdf)'
|
|
30863
30887
|
},
|
|
30864
30888
|
modes: {
|
|
30889
|
+
empty: '空数据',
|
|
30865
30890
|
current: '当前数据(当前页的数据)',
|
|
30866
30891
|
selected: '选中数据(当前页选中的数据)',
|
|
30867
30892
|
all: '全量数据(包括所有分页的数据)'
|