代码之家  ›  专栏  ›  技术社区  ›  Giorgi Moniava

阻止的更新:react router和redux

  •  0
  • Giorgi Moniava  · 技术社区  · 6 年前

    路由器 docs 知道什么时候使用 withRouter 和redux一起。然而,我发现它们并不完全清楚。

    例如文档说要使用 带路由器 什么时候

    1. 组件不是“路由组件”,这意味着它不是这样呈现的:

    我不清楚的是:

    • 首先,上面的第1点和第2点是否与and有关?e、 当第一和第二次发生时,组件是否不更新?(或者是or吗?)
    • 第一种情况是不是意味着我 connect(mapStateToProps)(Comp) ?
    • 第二点我完全不清楚。这是否意味着我们应该申请 带路由器 connect -是不是埃德哪个不是“路由组件”?

    exploration 看来这在路由器4.4版本中应该不再是一个问题了。

    1 回复  |  直到 5 年前
        1
  •  2
  •   Estus Flask    6 年前

    在第一种情况下,这是否意味着当我有connect(mapstatetops)(Comp)时,不与路由器一起使用是可以的吗?

    connect()(Comp) 表示它是连接的组件,这并不意味着 withRouter 可能与其他 connect 像这样的论点 connect(mapStateToProps)(Comp) The documentation 也提到了这一点:

    // before
    export default connect(mapStateToProps)(Something)
    
    // after
    import { withRouter } from 'react-router-dom'
    export default withRouter(connect(mapStateToProps)(Something))
    

    这是否意味着我们应该将路由器应用于任何组件(连接或不连接?)哪个不是“路由组件”?

    我们应该申请 带路由器 route props 在某种程度上。一个流行的例子是导航菜单,其中活动项突出显示,它不是路由组件,但它需要知道当前路由。

    或者为什么不把路由器连接到任何连接的组件上,它不会覆盖所有的情况吗?