需求:数组A中的项若在数组B 中出现,那么数组B对应项的disabled值为true,其他项为false
let arrA=['10020001','10020002']
let arrB = [
{
children: [],
expanded: false,
isLeaf: true,
key: '10020001',
searched: null,
title: '部门领导',
disabled: false,
},
{
children: [],
expanded: false,
isLeaf: true,
key: '10020002',
searched: null,
title: '行政管理',
disabled: false,
},
{
children: [],
expanded: false,
isLeaf: true,
key: '10020003',
searched: null,
title: '文秘',
disabled: false,
},
{
children: [],
expanded: false,
isLeaf: true,
key: '10020004',
searched: null,
title: '公共关系及外事',
disabled: false,
},
{
children: [],
expanded: false,
isLeaf: true,
key: '10020005',
searched: null,
title: '知识管理',
disabled: false,
},
{
children: [],
expanded: false,
isLeaf: true,
key: '10020006',
searched: null,
title: '督办管理',
disabled: false,
},
];
实现如下:
this.arrB.forEach(item => {
if (this.arrA.includes(item.key)) {
item.disabled = true;
} else {
item.disabled = false;
}
});
一开始一直没想到,所以决定记录下来。