umi/ant-design-pro-layout框架的学习

1. 怎么固定左边的导航栏

精华 :
npm地址 : ant-design/pro-layout
github地址 api文档
注意点 : 设置了fixedHeader = {true} fixSiderbar = {true} 没有作用,原因可能是{...props} {...settings} 内定义的属性覆盖了,所以写在{...props} {...settings} 只有就可以.

      {...props}
      {...settings}
      // 之所以写在下面是为了防止{...settings}里面的属性又覆盖了下面 fixedHeader fixSiderbar
      fixedHeader = {true}
      fixSiderbar = {true}

分析/解决问题/授人以鱼不如授人以渔

第一步首先定位到那一块是左侧导航栏的代码?

定位到 : zhushang_b/src/layouts/BasicLayout.tsx
具体定位到的代码

<ProLayout
      logo={imglogo}
      menuHeaderRender={(logoDom, titleDom) => (
        <Link to="/">
          {logoDom}
          {titleDom}
        </Link>
      )}
      onCollapse={handleMenuCollapse}
      menuItemRender={(menuItemProps, defaultDom) => {
        if (
          menuItemProps.isUrl ||
          menuItemProps.children ||
          !menuItemProps.path
        ) {
          return defaultDom;
        }
        return <Link to={menuItemProps.path}>{defaultDom}</Link>;
      }}
      breadcrumbRender={(routers = []) => [
        {
          path: "/",
          breadcrumbName: formatMessage({
            id: "menu.home",
            defaultMessage: "Home"
          })
        },
        ...routers
      ]}
      itemRender={(route, params, routes, paths) => {
        const first = routes.indexOf(route) === 0;
        return first ? (
          <Link to={paths.join("/")}>{route.breadcrumbName}</Link>
        ) : (
          <span>{route.breadcrumbName}</span>
        );
      }}
      footerRender={footerRender}
      menuDataRender={menuDataRender}
      formatMessage={formatMessage}
      rightContentRender={() => <RightContent />}
     
      {...props}
      {...settings}
      // 之所以写在下面是为了防止{...settings}里面的属性又覆盖了下面 fixedHeader fixSiderbar
      fixedHeader = {true}
      fixSiderbar = {true}
    >
      <Authorized authority={authorized!.authority} noMatch={noMatch}>
        {children}
      </Authorized>
    </ProLayout>

第二步分析代码,切记不要不去思考直接改. 因为既然框架给你了,很大可能会有相应的设计,毕竟这个算刚需吧!
然后我分析到这个菜单栏可以定义属性,但是这些属性肯定是人家自带的. 所以我们要去找它的api! 看ProLayout从哪里导入进来的如下

import ProLayout, {
  MenuDataItem,
  BasicLayoutProps as ProLayoutProps,
  Settings,
  DefaultFooter
} from "@ant-design/pro-layout";

继续分析,发现ProLayout是来自 ant-design/pro-layout, 那么接下来就找开源的ant-design/pro-layout文档. google搜索 ant-design/pro-layout

于是找到了ant-design/pro-layout
发现了新大陆API!!!

ant-design/pro-layout的api

哇,都是英文阿,我在想这个肯定是阿里维护的阿,怎能没中文api!!于是到github地址去看看


github地址

问题解决 >> api文档


2.二级导航

            // {
            //   path: "/zhangbin/demo",
            //   name: "zhangbin",
            //   icon: "crown",
            //   routes: [
            //     {
            //       path: "/zhangbin/demo",
            //       name: "zhangbin",
            //       component: "./zhangbin/demo"
            //     },
            //     {
            //       path: "/zhangbin/demo",
            //       name: "zhangbin",
            //       component: "./zhangbin/demo"
            //     }
            //   ]
            // },

整个例子

routes: [
        {
          path: '/',
          component: '../layouts/BasicLayout',
          authority: ['admin', 'user'],
          routes: [
            {
              path: '/',
              redirect: '/user/login',
            }, 
            {
              path: '/task-center/index',
              name: 'task-center',
              icon: 'unordered-list',
              component: './task-center/index',
            },
            // 不要删除,以后做二级联动直接是个例子 -faith
            // {
            //   path: "/zhangbin/demo",
            //   name: "zhangbin",
            //   icon: "crown",
            //   routes: [
            //     {
            //       path: "/zhangbin/demo",
            //       name: "zhangbin",
            //       component: "./zhangbin/demo"
            //     },
            //     {
            //       path: "/zhangbin/demo",
            //       name: "zhangbin",
            //       component: "./zhangbin/demo"
            //     }
            //   ]
            // },
            {
              path: '/taskDetails/taskDetails',
              component: './taskDetails/taskDetails',
            },
            {
              path: '/settlement-center/index',
              name: 'settlement-center',
              icon: 'account-book',
              component: './settlement-center/index',
            },
            {
              path: '/personnel-management/index',
              name: 'personnel-management',
              icon: 'team',
              component: './personnel-management/index',
            },
            {
              path: '/userRouter/userRouter',
              name: 'user-center',
              icon: 'user',
              component: './userRouter/userRouter', //路由守卫,用户注册了就跳转到信息页面, 否则跳转到注册页面
              // Routes: ['./routes/PriviteRoute.js'],
            },
            {
              path: '/userInfo/userInfo',
              component: './userInfo/userInfo',
            },
            {
              path: '/user-center/index',
              component: './user-center/index',
            },
            {
              path: '/createTask/createTask',
              component: './createTask/createTask',
            },
            {
              path: '/createTaskSuccess/createTaskSuccess',
              component: './createTaskSuccess/createTaskSuccess',
            },
            {
              path: '/settlement-center/settleList/index',
              component: './settlement-center/settleList/index',
            },
            {
              path: '/settlement-center/settleDetail/index',
              component: './settlement-center/settleDetail/index',
            },
            {
              component: './404',
            },
          ],
        },
        {
          component: './404',
        },
      ],
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,117评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,328评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,839评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,007评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,384评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,629评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,880评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,593评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,313评论 1 243
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,575评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,066评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,392评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,052评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,082评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,844评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,662评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,575评论 2 270