根据后端返回筛选前端数据
{"code":200,"msg":"请求成功","data":[{"0":"保密管理业务系统","bmgl":["涉密人员"]},{"0":"保密服务业务系统","bmfw":["省局邮箱","载体销毁"]},{"0":"业务数据展示系统","sjzs":["大屏展示"]}]}
systemEntryList: [{popoverStatus: false,name: '保密管理业务系统',list: [{name: '涉密人员',img: 'smry'},{name: '定密管理',img: 'dmgl'}]},{popoverStatus: false,name: '保密服务业务系统',list: [{name: '省局邮箱',img: 'yxxt'},{name: '载体销毁',img: 'smzt'}]}]
let data = [
{
b: "保密管理业务系统",
s: ["涉密人员"]
},
{
b: "保密监督业务系统",
s: ["省局邮箱", "载体销毁"]
}
];
let arr=[];
data.map((item)=>{
let obj={};
obj.popOverStatus=false;
obj.name=item.b;
obj.list=item.s;
arr.push(obj);
});
console.log(arr)
你这发的有点无厘头
这是json数据,而且是json数组,在前端转jsonarray 然后循环取值
以下是详细解答,望采纳
如果我理解你的问题正确,可以使用 JavaScript 的 map 函数来筛选你的前端数据。
首先,你需要定义一个筛选函数来返回满足您的筛选条件的数据,例如:
function filterData(data) {
return data.bmgl.includes("涉密人员");
}
然后,可以使用 map 函数将满足条件的数据转换为想要的格式,例如:
systemEntryList = response.data.map(item => {
return {
popoverStatus: false,
name: item[0],
list: [
{ name: item.bmgl[0], img: "smry" },
{ name: item.bmgl[1], img: "dmgl" }
]
};
});