对于不正常的json格式 如何循环菜单

#1
{
    "data": [
        {
            "id": "1",
            "img": "fa-gear",
            "name": "系统管理",
            "orderNo": 1,
            "pageCountRows": 0,
            "pageNumber": 1,
            "pageRows": 10,
            "pages": 0,
            "parentId": "00",
            "startIndex": 0,
            "type": "1",
            "url": "qq"
        },
        {
            "id": "2",
            "img": "fa-user",
            "name": "用户管理",
            "orderNo": 1,
            "pageCountRows": 0,
            "pageNumber": 1,
            "pageRows": 10,
            "pages": 0,
            "parentId": "1",
            "startIndex": 0,
            "type": "2",
            "url": "/user/list.html"
        },
        {
            "id": "3",
            "img": "22",
            "name": "业务管理",
            "orderNo": 2,
            "pageCountRows": 0,
            "pageNumber": 1,
            "pageRows": 10,
            "pages": 0,
            "parentId": "00",
            "startIndex": 0,
            "type": "1",
            "url": "11"
        },
        {
            "id": "4",
            "img": "fa-hand-paper-o",
            "name": "角色管理",
            "orderNo": 3,
            "pageCountRows": 0,
            "pageNumber": 1,
            "pageRows": 10,
            "pages": 0,
            "parentId": "1",
            "startIndex": 0,
            "type": "2",
            "url": "22"
        },
        {
            "id": "5",
            "name": "菜单管理",
            "orderNo": 2,
            "pageCountRows": 0,
            "pageNumber": 1,
            "pageRows": 10,
            "pages": 0,
            "parentId": "1",
            "startIndex": 0,
            "type": "2",
            "url": "/menu/list.html"
        }
    ],
    "success": true
}

通过type来判断1级和2级 ,通过parentld来判断父级 , 来个大神帮简单循环下
谢谢 小弟新手

#2
var type = 2;
var data = "你的json";
$.each(data.data, (i, value) => {
    console.log(value,i);
    if (type == value.type) {
        console.log(value.parentId);
        console.log(value.id);
        console.log(value.name);
    }
})
1 Like
#3
renderMenu (data) {
        return data.data.map(value => {
            if (value.type==='1') {
                return (
                    <SubMenu key={value.MenuID} title={<span>{value.Icon ? <Icon type={value.Icon} /> : ''}<span>{value.Name}</span></span>}>
                        {
                            this.renderMenu(value)
                        }
                    </SubMenu> 
                )
            } else {
                return (
                    <Menu.Item key={value.Identification} title={value.Name}>
                        <Link to={value.URL}>
                            {
                                value.Icon ? <Icon type={value.Icon} /> : ''
                            }
                            <span>{value.Name}</span>
                        </Link>
                    </Menu.Item> 
                )
            }
        })
    }
1 Like
#4

万分感谢~~~~~!