V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
AslanFong
V2EX  ›  问与答

react 中 route 和 layout 怎么解耦?

  •  
  •   AslanFong · Mar 22, 2019 · 1894 views
    This topic created in 2593 days ago, the information mentioned may be changed or developed.

    (不是专业前端)

    之前把 route 和 layout 放在一起,layout 里面嵌套了 menu 等,然后把 route 的 link 放在 menu 里面。总感觉这样的写法很复杂,而且不够灵活。看别人写的 route 例子都没有加入 layout 的。

    想请问一下各位专业前端,是否能让 layout 和 route 解耦?或者说我这样想是错的。

    antd+react-router-dom

    谢谢各位了~

    3 replies    2019-03-22 19:43:54 +08:00
    hxtheone
        1
    hxtheone  
       Mar 22, 2019   ❤️ 1
    (同样是非专业前端) 我的做法是把 route 的数据拿出来, 类似这样

    [{ to: '/xxx', icon: 'xxx' }, { to: '/yyy', icon: 'yyy' } ...]

    然后通过一个函数去生成 menu 里面需要的 link, 然后基本上 layout 里的组件就不用动了, 对数据的操作直接针对刚刚那个数组来就行, 也可以简单粗暴放到 redux 里维护
    yuthelloworld
        2
    yuthelloworld  
       Mar 22, 2019 via Android   ❤️ 2
    你把 router 当组件就好了,REACT 里万物皆组件
    YuTengjing
        3
    YuTengjing  
       Mar 22, 2019 via Android
    就把 router 当做一个根据 location 自动渲染对应视图的动态组建
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5960 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 01:59 · PVG 09:59 · LAX 18:59 · JFK 21:59
    ♥ Do have faith in what you're doing.