var menus = [
{
"deleted":false,
"id":1,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"device",
"icon":"chart",
"type":10011001,
"path":"/device",
"redirect":"noredirect",
"hidden":false,
"component":"/layout/Layout",
"title":"设备管理",
"childeren":[
{
"deleted":false,
"id":6,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"machine",
"icon":null,
"type":10011001,
"path":"machine",
"redirect":null,
"hidden":false,
"component":"/device/machine_manage",
"title":"设备管理",
"childeren":null,
"pid":1
},
{
"deleted":false,
"id":7,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"editMachine",
"icon":null,
"type":10011001,
"path":"editMachine",
"redirect":null,
"hidden":true,
"component":"/device/edit_machine",
"title":"编辑设备",
"childeren":null,
"pid":1
},
{
"deleted":false,
"id":8,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"deviceGoodStock",
"icon":null,
"type":10011001,
"path":"deviceGoodStock",
"redirect":null,
"hidden":true,
"component":"/device/good_stock",
"title":"设备商品库存",
"childeren":null,
"pid":1
},
{
"deleted":false,
"id":19,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"addMachine",
"icon":null,
"type":10011001,
"path":"addMachine",
"redirect":null,
"hidden":true,
"component":"/device/add_machine",
"title":"添加设备",
"childeren":null,
"pid":1
},
{
"deleted":false,
"id":9,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"addGoodStock",
"icon":null,
"type":10011001,
"path":"addGoodStock",
"redirect":null,
"hidden":true,
"component":"/device/add_good_stock",
"title":"添加设备商品库存",
"childeren":null,
"pid":1
},
{
"deleted":false,
"id":10,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"editGoodStock",
"icon":null,
"type":10011001,
"path":"editGoodStock",
"redirect":null,
"hidden":true,
"component":"/device/edit_good_stock",
"title":"编辑设备商品库存",
"childeren":null,
"pid":1
},
{
"deleted":false,
"id":3,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"groupingManage",
"icon":"chart",
"type":10011001,
"path":"grouping",
"redirect":null,
"hidden":false,
"component":"/device/grouping_manage",
"title":"分组管理",
"childeren":null,
"pid":1
},
{
"deleted":false,
"id":4,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"addGrouping",
"icon":null,
"type":10011001,
"path":"addGrouping",
"redirect":null,
"hidden":true,
"component":"/device/add_grouping",
"title":"添加分组",
"childeren":null,
"pid":1
},
{
"deleted":false,
"id":5,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"editGrouping",
"icon":null,
"type":10011001,
"path":"editGrouping",
"redirect":null,
"hidden":true,
"component":"/device/edit_grouping",
"title":"编辑分组",
"childeren":null,
"pid":1
}
],
"pid":null
},
{
"deleted":false,
"id":20,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"order",
"icon":"chart",
"type":10011001,
"path":"/order",
"redirect":"noredirect",
"hidden":false,
"component":"/layout/Layout",
"title":"订单管理",
"childeren":[
{
"deleted":false,
"id":21,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"tradeOrder",
"icon":"chart",
"type":10011001,
"path":"tradeOrder",
"redirect":null,
"hidden":false,
"component":"/order/trade_order",
"title":"订单查询",
"childeren":null,
"pid":20
}
],
"pid":null
},
{
"deleted":false,
"id":2,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"goods",
"icon":"chart",
"type":10011001,
"path":"/goods",
"redirect":"noredirect",
"hidden":false,
"component":"/goods/goods_manage",
"title":"商品管理",
"childeren":
[
{"deleted":false,
"id":16,"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"addGoods",
"icon":null,
"type":10011001,
"path":"addGoods",
"redirect":null,
"hidden":true,
"component":"/goods/add_goods",
"title":"添加商品",
"childeren":null,
"pid":2
},
{
"deleted":false,
"id":18,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"editGoods",
"icon":null,
"type":10011001,
"path":"editGoods",
"redirect":null,
"hidden":true,
"component":"/goods/edit_goods",
"title":"编辑商品",
"childeren":null,
"pid":2
},
{
"deleted":false,
"id":15,
"createBy":null,
"createTime":null,
"updateBy":null,
"updateTime":null,
"name":"goodsManage",
"icon":null,
"type":10011001,
"path":"goods",
"redirect":null,
"hidden":false,
"component":"/goods/goods_manage",
"title":"商品信息管理",
"childeren":null,
"pid":2
}
],
"pid":null
}
];
这就是上面的数据结构:

上面都是json数据,没什么特别的,主要代码在下面:
var addressData = [];
for(var a=0; a<menus.length; a++){
var children =[];
// if(menus[a].childeren === null){
// children = []
// console.log("没有值");
// }else{
for(var b=0; b<menus[a].childeren.length; b++){
let ComponentUrl = menus[a].childeren[b].component;
children.push({ path: menus[a].childeren[b].path, component: resolve => require([`@/views`+ComponentUrl], resolve), name: menus[a].childeren[b].name, hidden: menus[a].childeren[b].hidden, meta: {
title: menus[a].childeren[b].title,
}})
}
addressData.push({
component: Layout,
path: menus[a].path,
name: menus[a].name,
meta: {
title: menus[a].title,
icon: menus[a].icon
},
hidden: false,
children:children
})
// }
}
console.log("获取菜单")
console.log(addressData);
网友评论