【发布时间】:2020-06-09 06:58:15
【问题描述】:
我有以下数组。我正在使用这个数组在我的 UI 上动态生成复选框。这用于保存用户配置,以了解他们将能够在导航菜单中看到的内容。
accessLevels: any = [
{
description: "Properties",
type: '1',
selected: false
},
{
description: "Equipment",
type: '2',
selected: false
},
{
description: "Jobs",
type: '3',
selected: false
},
{
description: "Calender",
type: '4',
selected: false
}
]
我正在调用一个 API,它返回一个用户配置数组。所以我将得到一个页面数组及其类型,如下所示:
{
description: "Equipment",
type: '2'
},
{
description: "Jobs",
type: '3'
}
在从 API 返回的数组中,我只是得到应该出现在复选框上的值,所以我想要做的是遍历返回的数组并检查是否有任何类型与复选框数组中的任何类型匹配如果他们这样做,我想将'selected'设置为true。从而检查复选框。
这是我目前所拥有的:
async loadLandlordConfig(key: string) {
const result = await this.userService.loadLandlordConfig(key);
//let accessLevels = [];
this.selectedApiValues = result[0].accessLevels;
this.selectedApiValues.forEach((selectedValue)=> {
});
}
我不确定如何交叉检查这些值,然后将 selected 更改为 true。
希望我已经把一切都说清楚了。 有任何问题请提出。感谢所有帮助。
【问题讨论】:
-
如何跨数组匹配对象?一些数组项有“值”,一些有“类型”。
-
@KurtHamilton 抱歉,我只是将数组输入到那里并错过了,我的错误。我做了相应的调整
-
所以你在匹配类型?
-
是的,没错。
标签: arrays angular typescript checkbox