VueJs 递归函数封装:查询数组对象内容,合并⾄⼀个数组中实现需求:把⼀个多维数组对象 通过条件 合并⾄⼀个数组中;如下图需求:
递归代码封装实现:
// 递归设置
function setHandleListb(list) {
const arr = [];
let obj = {};
list.forEach(item => {
const tmp = { ...item };
if(tmp.purview_tag){
if (tmp.children) {
const chirlList = setHandleListb(tmp.children)
obj = {
purview_tag: tmp.purview_tag,
admin_menu_id: tmp.admin_menu_id,
icon: tmp.icon,
is_show: tmp.is_show,
name:  tmp.name,
parent_id:  tmp.parent_id,
}
arr.push(obj)
arr.push(...chirlList);
}
else {
obj = {
purview_tag: tmp.purview_tag,
admin_menu_id: tmp.admin_menu_id,
icon: tmp.icon,
vuejson转对象is_show: tmp.is_show,
name:  tmp.name,
parent_id:  tmp.parent_id
}
arr.push(obj);
}
}
})
return arr;
}
// 使⽤设置存储
export function setMenuList(menu) {
// 操作权限列表 purview_tag
const result = JSON.stringify(setHandleListb(menu))
window.sessionStorage.setItem('HandleChirldList', result) }
// 取出操作权限设置
export function getHandleChirldList() {
var list = Item('HandleChirldList');  if (list) {
return JSON.parse(list);
}
return [];
}
以上内容仅供参考!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。