umi layout的使用方法

react umi当中layout布局切换:登录页、登录之后的布局

1.切换layout布局

2.记录从哪个页面跳转到登录页面的,登录之后返回(不使用localStorage)

3.Cookie等信息记录登录状态(登录失效,跳到登录页面)

核心观点是:将是否登录的状态划分为2种布局

                  布局1:非登录状态,直接进入登录页面

                  布局2:已登录状态,拥有sider、header、main区域划分的布局

下面以react项目为例:

layouts/index.jsx

render() {
const { children, location, user } = this.props;
let Container = ((getCookieToken() || user.token) && location.pathname.indexOf(’/login’) === -1 ) ? Logged : Login;

return (
    <Fragment>
      <Container>{children}</Container>
    </Fragment>
)

}
未登录:layout/login/index.jsx

export default ({ children }) => {
return children
}
已登录:layout/logged/index.jsx

首先布局的核心就是那层顶级的组件,其他的子组件直接进入就是了

需要到跳转到登录页面就:切换布局组件,然后正常跳转路由就是了,是不是很简单。。。。

然后通过地址,记录是从那个url跳转到的登录页面如:localhost:8080/login?form=home

做一个跳转前的钩子,记录到地址中,

然后登录之后优先跳转到这个地址中去,这样是不是体验好一点呢

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值