修复两个问题:
1.如果某行禁用_disabled=true,则这行的_checked,无论如何都是false,因为禁用的目的就是不能选择 2.修复某行设置_disabled=true时,全选状态判断有误的bug
This commit is contained in:
parent
87379c8205
commit
c731509853
3 changed files with 26 additions and 13 deletions
|
@ -84,16 +84,23 @@
|
|||
},
|
||||
isSelectAll () {
|
||||
let isSelectAll = true;
|
||||
let isAllDisabled = true;
|
||||
if (!this.data.length) isSelectAll = false;
|
||||
|
||||
for (let i = 0; i < this.data.length; i++) {
|
||||
if (!this.objData[this.data[i]._index]._isChecked) {
|
||||
if(this.objData[this.data[i]._index]._isDisabled){
|
||||
isAllDisabled = isAllDisabled && true;
|
||||
continue;
|
||||
}else{
|
||||
isAllDisabled = isAllDisabled && false;
|
||||
}
|
||||
if (!this.objData[this.data[i]._index]._isChecked ) {
|
||||
isSelectAll = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return isSelectAll;
|
||||
return isAllDisabled ? false : isSelectAll;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
|
|
@ -553,8 +553,17 @@
|
|||
this.data.forEach((row, index) => {
|
||||
const newRow = deepCopy(row);// todo 直接替换
|
||||
newRow._isHover = false;
|
||||
if(newRow._disabled){
|
||||
newRow._isDisabled = newRow._disabled;
|
||||
}else{
|
||||
newRow._isDisabled = false;
|
||||
}
|
||||
if (newRow._checked) {
|
||||
newRow._isChecked = newRow._checked;
|
||||
if(newRow._isDisabled){
|
||||
newRow._isChecked = false;
|
||||
}else{
|
||||
newRow._isChecked = newRow._checked;
|
||||
}
|
||||
} else {
|
||||
newRow._isChecked = false;
|
||||
}
|
||||
|
@ -563,12 +572,6 @@
|
|||
} else {
|
||||
newRow._isHighlight = false;
|
||||
}
|
||||
|
||||
if(newRow._disabled){
|
||||
newRow._isDisabled = newRow._disabled;
|
||||
}else{
|
||||
newRow._isDisabled = false;
|
||||
}
|
||||
data[index] = newRow;
|
||||
});
|
||||
return data;
|
||||
|
|
|
@ -54,26 +54,29 @@
|
|||
age: 18,
|
||||
address: '北京市朝阳区芍药居',
|
||||
_highlight: true,
|
||||
_checked: true
|
||||
_checked: true,
|
||||
_disabled: false
|
||||
},
|
||||
{
|
||||
name: '张小刚',
|
||||
age: 25,
|
||||
address: '北京市海淀区西二旗',
|
||||
_checked: true
|
||||
_checked: false,
|
||||
_disabled: true
|
||||
},
|
||||
{
|
||||
name: '李小红',
|
||||
age: 30,
|
||||
address: '上海市浦东新区世纪大道',
|
||||
_checked: false,
|
||||
_checked: true,
|
||||
_disabled: true
|
||||
},
|
||||
{
|
||||
name: '周小伟',
|
||||
age: 26,
|
||||
address: '深圳市南山区深南大道',
|
||||
_checked: true
|
||||
_checked: true,
|
||||
_disabled: false
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue