【问题标题】:In the React, is the Route and Container 1: 1?在 React 中,Route 和 Container 是 1:1 的吗?
【发布时间】:2018-02-23 04:08:18
【问题描述】:
我想需要你的帮助。
目前我正在使用 React。
我认为在 React 中,Container 和 Route 是 1:1。所以当我使用 React 进行路由器配置时。在典型的“Redux”配置中,Container(智能组件)与路由中的页面数相同。
如果我看其他人的实现模式,容器不只是反映路由。
常见的情况比Route还多。
在使用'Redux'的结构中,是Container 1:1 Route?
另外,Container 好像没有 HTML Tag,对吗?
【问题讨论】:
标签:
reactjs
routes
redux
containers
【解决方案1】:
这不一定是真的,你可能有一个路由来渲染一个没有行为的组件,因此它仍然是一个展示组件。
我建议您不要被容器和组件的定义所淹没。尝试将 Route 视为另一个组件,不同之处在于,当 path 匹配时,它将呈现指定的组件(或者如果您使用路由的 render 属性,则呈现在行函数中。
总是从创建组件开始,这些组件只是返回内容的函数,然后随着需求的变化,通过声明一个扩展 Component 的类开始增长,然后开始将返回的元素解耦到其他组件中。与 Redux 相同,默认情况下不要假设您总是需要行为/状态,因此甚至不要连接组件,然后通过添加状态然后添加操作来开始增长。但是,每当您认为您的组件有很多职责时,就会通过解耦成更多组件来重新开始循环。