vxe-table 3.6.9 → 3.6.10-beta.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.
- package/lib/grid/src/grid.js +89 -22
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/icon/style/{iconfont.1670947519373.ttf → iconfont.1676040570288.ttf} +0 -0
- package/lib/icon/style/{iconfont.1670947519373.woff → iconfont.1676040570288.woff} +0 -0
- package/lib/icon/style/{iconfont.1670947519373.woff2 → iconfont.1676040570288.woff2} +0 -0
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/{iconfont.1670947519373.ttf → iconfont.1676040570288.ttf} +0 -0
- package/lib/{iconfont.1670947519373.woff → iconfont.1676040570288.woff} +0 -0
- package/lib/{iconfont.1670947519373.woff2 → iconfont.1676040570288.woff2} +0 -0
- package/lib/index.css +1 -1
- package/lib/index.umd.js +245 -109
- package/lib/index.umd.min.js +1 -1
- package/lib/input/src/input.js +46 -8
- package/lib/input/src/input.min.js +1 -1
- package/lib/list/src/list.js +22 -16
- package/lib/list/src/list.min.js +1 -1
- package/lib/pager/src/pager.js +12 -11
- package/lib/pager/src/pager.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/src/methods.js +67 -47
- package/lib/table/src/methods.min.js +1 -1
- package/lib/toolbar/src/toolbar.js +4 -2
- package/lib/toolbar/src/toolbar.min.js +1 -1
- package/lib/tools/log.js +1 -1
- package/lib/tools/log.min.js +1 -1
- package/lib/v-x-e-table/index.js +1 -1
- package/lib/v-x-e-table/index.min.js +1 -1
- package/package.json +1 -1
- package/packages/grid/src/grid.js +41 -15
- package/packages/input/src/input.js +35 -8
- package/packages/list/src/list.js +3 -0
- package/packages/pager/src/pager.js +8 -7
- package/packages/table/src/methods.js +62 -43
- package/packages/toolbar/src/toolbar.js +2 -2
package/lib/table/src/methods.js
CHANGED
|
@@ -3104,8 +3104,14 @@ var Methods = {
|
|
|
3104
3104
|
column = params.column;
|
|
3105
3105
|
var cell = evnt.currentTarget;
|
|
3106
3106
|
this.handleTargetEnterEvent(tooltipStore.column !== column || tooltipStore.row !== row);
|
|
3107
|
-
|
|
3108
|
-
|
|
3107
|
+
// 单元格处于编辑状态时不触发提示框
|
|
3108
|
+
if (column.editRender && (0, _utils.isEnableConf)(editConfig)) {
|
|
3109
|
+
// 如果是行编辑模式
|
|
3110
|
+
if (editOpts.mode === 'row' && actived.row === row) {
|
|
3111
|
+
return;
|
|
3112
|
+
}
|
|
3113
|
+
// 如果是单元格编辑模式
|
|
3114
|
+
if (actived.row === row && actived.column === column) {
|
|
3109
3115
|
return;
|
|
3110
3116
|
}
|
|
3111
3117
|
}
|
|
@@ -3244,7 +3250,7 @@ var Methods = {
|
|
|
3244
3250
|
var checkAll = checkboxOpts.checkAll,
|
|
3245
3251
|
checkRowKeys = checkboxOpts.checkRowKeys;
|
|
3246
3252
|
if (checkAll) {
|
|
3247
|
-
this.
|
|
3253
|
+
this.handleCheckedAllCheckboxRow(true, true);
|
|
3248
3254
|
} else if (checkRowKeys) {
|
|
3249
3255
|
var defSelection = [];
|
|
3250
3256
|
checkRowKeys.forEach(function (rowid) {
|
|
@@ -3252,15 +3258,10 @@ var Methods = {
|
|
|
3252
3258
|
defSelection.push(fullDataRowIdData[rowid].row);
|
|
3253
3259
|
}
|
|
3254
3260
|
});
|
|
3255
|
-
this.
|
|
3261
|
+
this.handleCheckedCheckboxRow(defSelection, true, true);
|
|
3256
3262
|
}
|
|
3257
3263
|
},
|
|
3258
|
-
|
|
3259
|
-
* 用于多选行,设置行为选中状态,第二个参数为选中与否
|
|
3260
|
-
* @param {Array/Row} rows 行数据
|
|
3261
|
-
* @param {Boolean} value 是否选中
|
|
3262
|
-
*/
|
|
3263
|
-
setCheckboxRow: function setCheckboxRow(rows, value) {
|
|
3264
|
+
handleCheckedCheckboxRow: function handleCheckedCheckboxRow(rows, value, isForce) {
|
|
3264
3265
|
var _this32 = this;
|
|
3265
3266
|
if (rows && !_xeUtils.default.isArray(rows)) {
|
|
3266
3267
|
rows = [rows];
|
|
@@ -3268,10 +3269,18 @@ var Methods = {
|
|
|
3268
3269
|
rows.forEach(function (row) {
|
|
3269
3270
|
return _this32.handleSelectRow({
|
|
3270
3271
|
row: row
|
|
3271
|
-
}, !!value);
|
|
3272
|
+
}, !!value, isForce);
|
|
3272
3273
|
});
|
|
3273
3274
|
return this.$nextTick();
|
|
3274
3275
|
},
|
|
3276
|
+
/**
|
|
3277
|
+
* 用于多选行,设置行为选中状态,第二个参数为选中与否
|
|
3278
|
+
* @param {Array/Row} rows 行数据
|
|
3279
|
+
* @param {Boolean} value 是否选中
|
|
3280
|
+
*/
|
|
3281
|
+
setCheckboxRow: function setCheckboxRow(rows, value) {
|
|
3282
|
+
return this.handleCheckedCheckboxRow(rows, value, true);
|
|
3283
|
+
},
|
|
3275
3284
|
isCheckedByCheckboxRow: function isCheckedByCheckboxRow(row) {
|
|
3276
3285
|
var selection = this.selection;
|
|
3277
3286
|
var checkField = this.checkboxOpts.checkField;
|
|
@@ -3288,7 +3297,7 @@ var Methods = {
|
|
|
3288
3297
|
* 多选,行选中事件
|
|
3289
3298
|
* value 选中true 不选false 半选-1
|
|
3290
3299
|
*/
|
|
3291
|
-
handleSelectRow: function handleSelectRow(_ref6, value) {
|
|
3300
|
+
handleSelectRow: function handleSelectRow(_ref6, value, isForce) {
|
|
3292
3301
|
var _this33 = this;
|
|
3293
3302
|
var row = _ref6.row;
|
|
3294
3303
|
var selection = this.selection,
|
|
@@ -3310,7 +3319,7 @@ var Methods = {
|
|
|
3310
3319
|
} else {
|
|
3311
3320
|
// 更新子节点状态
|
|
3312
3321
|
_xeUtils.default.eachTree([row], function (item) {
|
|
3313
|
-
if (_this33.eqRow(item, row) || !checkMethod || checkMethod({
|
|
3322
|
+
if (_this33.eqRow(item, row) || isForce || !checkMethod || checkMethod({
|
|
3314
3323
|
row: item
|
|
3315
3324
|
})) {
|
|
3316
3325
|
_xeUtils.default.set(item, checkField, value);
|
|
@@ -3327,7 +3336,7 @@ var Methods = {
|
|
|
3327
3336
|
}, treeOpts);
|
|
3328
3337
|
if (matchObj && matchObj.parent) {
|
|
3329
3338
|
var parentStatus;
|
|
3330
|
-
var vItems = checkMethod ? matchObj.items.filter(function (item) {
|
|
3339
|
+
var vItems = !isForce && checkMethod ? matchObj.items.filter(function (item) {
|
|
3331
3340
|
return checkMethod({
|
|
3332
3341
|
row: item
|
|
3333
3342
|
});
|
|
@@ -3347,10 +3356,10 @@ var Methods = {
|
|
|
3347
3356
|
}
|
|
3348
3357
|
return this.handleSelectRow({
|
|
3349
3358
|
row: matchObj.parent
|
|
3350
|
-
}, parentStatus);
|
|
3359
|
+
}, parentStatus, isForce);
|
|
3351
3360
|
}
|
|
3352
3361
|
} else {
|
|
3353
|
-
if (!checkMethod || checkMethod({
|
|
3362
|
+
if (isForce || !checkMethod || checkMethod({
|
|
3354
3363
|
row: row
|
|
3355
3364
|
})) {
|
|
3356
3365
|
_xeUtils.default.set(row, checkField, value);
|
|
@@ -3369,9 +3378,9 @@ var Methods = {
|
|
|
3369
3378
|
} else {
|
|
3370
3379
|
// 更新子节点状态
|
|
3371
3380
|
_xeUtils.default.eachTree([row], function (item) {
|
|
3372
|
-
if (_this33.eqRow(item, row) || !checkMethod || checkMethod({
|
|
3381
|
+
if (_this33.eqRow(item, row) || isForce && (!checkMethod || checkMethod({
|
|
3373
3382
|
row: item
|
|
3374
|
-
})) {
|
|
3383
|
+
}))) {
|
|
3375
3384
|
if (value) {
|
|
3376
3385
|
selection.push(item);
|
|
3377
3386
|
} else {
|
|
@@ -3392,7 +3401,7 @@ var Methods = {
|
|
|
3392
3401
|
}, treeOpts);
|
|
3393
3402
|
if (_matchObj && _matchObj.parent) {
|
|
3394
3403
|
var _parentStatus;
|
|
3395
|
-
var _vItems = checkMethod ? _matchObj.items.filter(function (item) {
|
|
3404
|
+
var _vItems = !isForce && checkMethod ? _matchObj.items.filter(function (item) {
|
|
3396
3405
|
return checkMethod({
|
|
3397
3406
|
row: item
|
|
3398
3407
|
});
|
|
@@ -3412,10 +3421,10 @@ var Methods = {
|
|
|
3412
3421
|
}
|
|
3413
3422
|
return this.handleSelectRow({
|
|
3414
3423
|
row: _matchObj.parent
|
|
3415
|
-
}, _parentStatus);
|
|
3424
|
+
}, _parentStatus, isForce);
|
|
3416
3425
|
}
|
|
3417
3426
|
} else {
|
|
3418
|
-
if (!checkMethod || checkMethod({
|
|
3427
|
+
if (isForce || !checkMethod || checkMethod({
|
|
3419
3428
|
row: row
|
|
3420
3429
|
})) {
|
|
3421
3430
|
if (value) {
|
|
@@ -3463,16 +3472,16 @@ var Methods = {
|
|
|
3463
3472
|
* 多选,切换某一行的选中状态
|
|
3464
3473
|
*/
|
|
3465
3474
|
toggleCheckboxRow: function toggleCheckboxRow(row) {
|
|
3466
|
-
this.
|
|
3475
|
+
var selection = this.selection,
|
|
3476
|
+
checkboxOpts = this.checkboxOpts;
|
|
3477
|
+
var checkField = checkboxOpts.checkField;
|
|
3478
|
+
var value = checkField ? !_xeUtils.default.get(row, checkField) : this.findRowIndexOf(selection, row) === -1;
|
|
3479
|
+
this.handleSelectRow({
|
|
3467
3480
|
row: row
|
|
3468
|
-
});
|
|
3481
|
+
}, value, true);
|
|
3469
3482
|
return this.$nextTick();
|
|
3470
3483
|
},
|
|
3471
|
-
|
|
3472
|
-
* 用于多选行,设置所有行的选中状态
|
|
3473
|
-
* @param {Boolean} value 是否选中
|
|
3474
|
-
*/
|
|
3475
|
-
setAllCheckboxRow: function setAllCheckboxRow(value) {
|
|
3484
|
+
handleCheckedAllCheckboxRow: function handleCheckedAllCheckboxRow(value, isForce) {
|
|
3476
3485
|
var _this34 = this;
|
|
3477
3486
|
var afterFullData = this.afterFullData,
|
|
3478
3487
|
treeConfig = this.treeConfig,
|
|
@@ -3497,7 +3506,7 @@ var Methods = {
|
|
|
3497
3506
|
*/
|
|
3498
3507
|
if (checkField) {
|
|
3499
3508
|
var checkValFn = function checkValFn(row) {
|
|
3500
|
-
if (!checkMethod || checkMethod({
|
|
3509
|
+
if (isForce || !checkMethod || checkMethod({
|
|
3501
3510
|
row: row
|
|
3502
3511
|
})) {
|
|
3503
3512
|
if (value) {
|
|
@@ -3525,7 +3534,7 @@ var Methods = {
|
|
|
3525
3534
|
* 如果方法成立,则添加到临时集合中
|
|
3526
3535
|
*/
|
|
3527
3536
|
_xeUtils.default.eachTree(afterFullData, function (row) {
|
|
3528
|
-
if (!checkMethod || checkMethod({
|
|
3537
|
+
if (isForce || !checkMethod || checkMethod({
|
|
3529
3538
|
row: row
|
|
3530
3539
|
})) {
|
|
3531
3540
|
selectRows.push(row);
|
|
@@ -3536,7 +3545,7 @@ var Methods = {
|
|
|
3536
3545
|
* 如果是树取消
|
|
3537
3546
|
* 如果方法成立,则不添加到临时集合中
|
|
3538
3547
|
*/
|
|
3539
|
-
if (checkMethod) {
|
|
3548
|
+
if (!isForce && checkMethod) {
|
|
3540
3549
|
_xeUtils.default.eachTree(afterFullData, function (row) {
|
|
3541
3550
|
if (checkMethod({
|
|
3542
3551
|
row: row
|
|
@@ -3553,7 +3562,7 @@ var Methods = {
|
|
|
3553
3562
|
* 如果存在选中方法且成立或者本身已勾选,则添加到临时集合中
|
|
3554
3563
|
* 如果不存在选中方法,则添加所有数据到临时集合中
|
|
3555
3564
|
*/
|
|
3556
|
-
if (checkMethod) {
|
|
3565
|
+
if (!isForce && checkMethod) {
|
|
3557
3566
|
selectRows = afterFullData.filter(function (row) {
|
|
3558
3567
|
return _this34.findRowIndexOf(selection, row) > -1 || checkMethod({
|
|
3559
3568
|
row: row
|
|
@@ -3568,7 +3577,7 @@ var Methods = {
|
|
|
3568
3577
|
* 如果方法成立,则不添加到临时集合中;如果方法不成立则判断当前是否已勾选,如果已被勾选则添加到新集合中
|
|
3569
3578
|
* 如果不存在选中方法,无需处理,临时集合默认为空
|
|
3570
3579
|
*/
|
|
3571
|
-
if (checkMethod) {
|
|
3580
|
+
if (!isForce && checkMethod) {
|
|
3572
3581
|
selectRows = afterFullData.filter(function (row) {
|
|
3573
3582
|
return checkMethod({
|
|
3574
3583
|
row: row
|
|
@@ -3593,6 +3602,14 @@ var Methods = {
|
|
|
3593
3602
|
}
|
|
3594
3603
|
this.treeIndeterminates = [];
|
|
3595
3604
|
this.checkSelectionStatus();
|
|
3605
|
+
return this.$nextTick();
|
|
3606
|
+
},
|
|
3607
|
+
/**
|
|
3608
|
+
* 用于多选行,设置所有行的选中状态
|
|
3609
|
+
* @param {Boolean} value 是否选中
|
|
3610
|
+
*/
|
|
3611
|
+
setAllCheckboxRow: function setAllCheckboxRow(value) {
|
|
3612
|
+
return this.handleCheckedAllCheckboxRow(value, true);
|
|
3596
3613
|
},
|
|
3597
3614
|
checkSelectionStatus: function checkSelectionStatus() {
|
|
3598
3615
|
var _this35 = this;
|
|
@@ -3704,14 +3721,14 @@ var Methods = {
|
|
|
3704
3721
|
if (radioOpts.reserve && radioReserveRow) {
|
|
3705
3722
|
var rowid = (0, _util.getRowid)(this, radioReserveRow);
|
|
3706
3723
|
if (fullDataRowIdData[rowid]) {
|
|
3707
|
-
this.
|
|
3724
|
+
this.handleCheckedRadioRow(fullDataRowIdData[rowid].row, true);
|
|
3708
3725
|
}
|
|
3709
3726
|
}
|
|
3710
3727
|
// 复选框
|
|
3711
3728
|
this.selection = getRecoverRow(this, selection); // 刷新多选行状态
|
|
3712
3729
|
// 还原保留选中状态
|
|
3713
3730
|
if (checkboxOpts.reserve) {
|
|
3714
|
-
this.
|
|
3731
|
+
this.handleCheckedCheckboxRow(handleReserveRow(this, this.checkboxReserveRowMap), true, true);
|
|
3715
3732
|
}
|
|
3716
3733
|
if (currentRow && !fullAllDataRowMap.has(currentRow)) {
|
|
3717
3734
|
this.currentRow = null; // 刷新当前行状态
|
|
@@ -3833,7 +3850,7 @@ var Methods = {
|
|
|
3833
3850
|
* 多选,选中所有事件
|
|
3834
3851
|
*/
|
|
3835
3852
|
triggerCheckAllEvent: function triggerCheckAllEvent(evnt, value) {
|
|
3836
|
-
this.
|
|
3853
|
+
this.handleCheckedAllCheckboxRow(value);
|
|
3837
3854
|
this.emitEvent('checkbox-all', {
|
|
3838
3855
|
records: this.getCheckboxRecords(),
|
|
3839
3856
|
reserves: this.getCheckboxReserveRecords(),
|
|
@@ -3892,7 +3909,7 @@ var Methods = {
|
|
|
3892
3909
|
reserve = radioOpts.reserve;
|
|
3893
3910
|
if (rowid) {
|
|
3894
3911
|
if (fullDataRowIdData[rowid]) {
|
|
3895
|
-
this.
|
|
3912
|
+
this.handleCheckedRadioRow(fullDataRowIdData[rowid].row, true);
|
|
3896
3913
|
}
|
|
3897
3914
|
if (reserve) {
|
|
3898
3915
|
var rowkey = (0, _util.getRowkey)(this);
|
|
@@ -3910,7 +3927,7 @@ var Methods = {
|
|
|
3910
3927
|
var newValue = row;
|
|
3911
3928
|
var isChange = oldValue !== newValue;
|
|
3912
3929
|
if (isChange) {
|
|
3913
|
-
this.
|
|
3930
|
+
this.handleCheckedRadioRow(newValue);
|
|
3914
3931
|
} else if (!radioOpts.strict) {
|
|
3915
3932
|
isChange = oldValue === newValue;
|
|
3916
3933
|
if (isChange) {
|
|
@@ -3945,7 +3962,7 @@ var Methods = {
|
|
|
3945
3962
|
var $el = this.$el,
|
|
3946
3963
|
rowOpts = this.rowOpts;
|
|
3947
3964
|
this.clearCurrentRow();
|
|
3948
|
-
this.clearCurrentColumn()
|
|
3965
|
+
// this.clearCurrentColumn()
|
|
3949
3966
|
this.currentRow = row;
|
|
3950
3967
|
if (rowOpts.isCurrent || this.highlightCurrentRow) {
|
|
3951
3968
|
if ($el) {
|
|
@@ -3959,14 +3976,10 @@ var Methods = {
|
|
|
3959
3976
|
isCheckedByRadioRow: function isCheckedByRadioRow(row) {
|
|
3960
3977
|
return this.selectRow === row;
|
|
3961
3978
|
},
|
|
3962
|
-
|
|
3963
|
-
* 用于单选行,设置某一行为选中状态
|
|
3964
|
-
* @param {Row} row 行对象
|
|
3965
|
-
*/
|
|
3966
|
-
setRadioRow: function setRadioRow(row) {
|
|
3979
|
+
handleCheckedRadioRow: function handleCheckedRadioRow(row, isForce) {
|
|
3967
3980
|
var radioOpts = this.radioOpts;
|
|
3968
3981
|
var checkMethod = radioOpts.checkMethod;
|
|
3969
|
-
if (row && (!checkMethod || checkMethod({
|
|
3982
|
+
if (row && (isForce || !checkMethod || checkMethod({
|
|
3970
3983
|
row: row
|
|
3971
3984
|
}))) {
|
|
3972
3985
|
this.selectRow = row;
|
|
@@ -3974,6 +3987,13 @@ var Methods = {
|
|
|
3974
3987
|
}
|
|
3975
3988
|
return this.$nextTick();
|
|
3976
3989
|
},
|
|
3990
|
+
/**
|
|
3991
|
+
* 用于单选行,设置某一行为选中状态
|
|
3992
|
+
* @param {Row} row 行对象
|
|
3993
|
+
*/
|
|
3994
|
+
setRadioRow: function setRadioRow(row) {
|
|
3995
|
+
return this.handleCheckedRadioRow(row, true);
|
|
3996
|
+
},
|
|
3977
3997
|
/**
|
|
3978
3998
|
* 用于当前行,手动清空当前高亮的状态
|
|
3979
3999
|
*/
|
|
@@ -4098,7 +4118,7 @@ var Methods = {
|
|
|
4098
4118
|
setCurrentColumn: function setCurrentColumn(fieldOrColumn) {
|
|
4099
4119
|
var column = (0, _util.handleFieldOrColumn)(this, fieldOrColumn);
|
|
4100
4120
|
if (column) {
|
|
4101
|
-
this.clearCurrentRow()
|
|
4121
|
+
// this.clearCurrentRow()
|
|
4102
4122
|
this.clearCurrentColumn();
|
|
4103
4123
|
this.currentColumn = column;
|
|
4104
4124
|
}
|
|
@@ -4857,7 +4877,7 @@ var Methods = {
|
|
|
4857
4877
|
}
|
|
4858
4878
|
// 如果当前节点已选中,则展开后子节点也被选中
|
|
4859
4879
|
if (!checkStrictly && _this48.isCheckedByCheckboxRow(row)) {
|
|
4860
|
-
_this48.
|
|
4880
|
+
_this48.handleCheckedCheckboxRow(childRows, true, true);
|
|
4861
4881
|
}
|
|
4862
4882
|
return _this48.$nextTick().then(function () {
|
|
4863
4883
|
if (transform) {
|