antdesign页面title,带动态参数的路由获取不到nam

2018-12-28  本文已影响0人  big_fang

进入BasicLayout.js页面:

// 引入插件
import pathToRegexp from 'path-to-regexp';
// 替换原来的 getPageTitle 函数
 getPageTitle() {
    const { routerData, location } = this.props;
    const { pathname } = location;
    let title = localStorage.getItem('company_type') === 'shopping_mall' ? '智慧Mall后台管理系统' : '智慧零售后台管理系统';
    // 多了这几行的处理 
    // start--
    let currRouteData = null;
    for(const key in routerData){
      if(pathToRegexp(key).test(pathname)){
        currRouteData = routerData[key];
      }
    }//  --end
    if(currRouteData && currRouteData.name){
      title = `${currRouteData.name} - ${title}`;
    }
    return title;
  }

发现这样改了之后,解决了带参数的路由title不显示问题,但是有些列表中的详情也无法显示,必须添加一行代码来命名:
router.js文件中

    '/shopping/yk/member-details/:id/:type': {
      name: '识别列表查询', // 详情页由于没有在menu.js中定义页面名称,所以需要在此手动添加name
      component: dynamicWrapper(app, ['customer', 'company'], () =>
        import('../routes/ShoppingMallReportQuery/yk/MemberIdentifyDetail')
      ),
    },

参考来源:https://github.com/ant-design/ant-design-pro/issues/1248

上一篇下一篇

猜你喜欢

热点阅读