reactjs - React redux 原子设计——redux 的作用在哪里?
问题描述
在我看来(这当然可能是错误的,这就是我发布这个问题的原因)原子设计架构和 redux 架构很难联系起来。不要误会我的意思——跟着我。
原子设计说所有组件(页面除外)都不应访问主应用程序商店,我同意这一点。但是,他们说只有“页面”元素可以连接到商店(在 redux 情况下 - 具有mapStateToProps)。这已经是一个问题了,因为虽然拥有一个由 Item 分子组成的 List 组件 - 最好在单个Item 组件中拥有一个连接函数并使用从 store 中获取单个实体props.id
. 为什么它在真实应用程序中更好?因为它有助于提高性能。原子设计建议在这里做什么?在“页面”级别从商店获取大量集合并将其传递给模板-> 有机体->(最终)分子。我在这里看到的 - 由 mapStateToProps 函数引起的许多不必要的重新渲染事件。有关更多详细信息,请参阅此帖子:
https ://github.com/reduxjs/redux/issues/1751
我想解决这个问题,我的解决方案在这里描述:
容器组件(带有 connect 函数的组件)也可以重复使用,因为 mapStateToProps 函数可以使用第二个参数“ownProps”访问不同的存储源。为什么不在分子级别创建容器组件?这也解决了“螺旋钻”问题。或者,如果分子级别的容器组件不是一个好主意 - 也许然后在“有机体”级别上组合容器?我真的不知道哪种方式是正确的,所以请你帮我回答这个问题 - redux 的东西应该进入哪里?这方面的文章不多。
提前致谢。
解决方案
推荐阅读
- flutter - 避免 Flutter 的数据轮询
- python - KeyError 的问题:'val_acc'
- filter - 无法使用 Primeng Turbo Table 过滤 Angular 7 中的嵌套对象
- python - 为什么静态文件不会在 django web 应用程序中加载?
- java - 如何检查字符串是否包含 3 位或更多位
- spring - 将 Spring Boot 配置为同时使用 H2 和 Oracle
- java - 使用递归在不更改字符顺序的情况下反转 Java 中的句子
- javascript - 如何将 get 方法中的 JSON 数据构造成 html 并将其发送到电子邮件正文
- r - 使用 aws.s3 从内存中读取 RDS 文件
- java - 遍历数字数组的每个排列