ant design pro项目中添加面包屑

  1. 导入面包屑组件
    import { PageHeaderWrapper } from '@ant-design/pro-layout';
  2. 在return的jsx最外层包裹面包屑组件
 <PageHeaderWrapper title="我的测试">
      这是我的测试页面
 </PageHeaderWrapper>

其中:title参数为面包屑下面的标题

  1. 在路由进行配置
{
  path: '/demo',
  name: '测试',
  hideInMenu: 'true',
  component: './demo'
},

其中:hideInMenu为隐藏左侧导航栏,否则话这个页面将在左侧导航栏中显示
这是没有隐藏的效果
在这里插入图片描述
这是隐藏了的效果
在这里插入图片描述
4. 如果要层级显示多层面包屑

 //角色管理模块的路由
 routes: [
 	//角色列表
     {
         path: '/user/role',
         name: 'role',
         locale: 'menu.user.role',
         component: './User/Role',
     },
     //角色添加
     {
         path: '/user/role/role-add',
         name: 'role-add',
         hideInMenu: 'true', //添加页不需要在menu上显示
         component: './User/RoleAdd',
     },
     //角色修改
     {
         path: '/user/role/role-mod/:id',
         name: 'role-mod',
         hideInMenu: 'true',
         component: './User/RoleMod',
     },
]

//在src/locales/menu.js中添加面包屑和列表的名称
  'menu.user.role': '角色管理',
  'menu.user.role-add': '角色添加',
  'menu.user.role-mod': '角色修改',
  
  
 //因为添加和修改页都加了hideInMenu属性,导致面包屑也不显示了,所以在src/models/menu.js上做修改
 
  effects: {
    *getMenuData({ payload }, { put }) {
      const { routes, authority } = payload;
      const menuData = filterMenuData(memoizeOneFormatter(routes, authority));
       // const breadcrumbNameMap = memoizeOneGetBreadcrumbNameMap(menuData); 这是原来的代码
         const breadcrumbNameMap = memoizeOneGetBreadcrumbNameMap(memoizeOneFormatter(routes, authority)); //这是修改后的代码,因为menuData是已经过滤掉存在hideInMenu
      yield put({
        type: 'save',
        payload: { menuData, breadcrumbNameMap },
      });
    },

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值