Reactjs 反应数据流
我正在尝试创建一个博客应用程序,我对React的数据流模式有点困惑 我是否应该尝试在获取帖子后使用Redux之类的工具来存储所有帖子?我是否使用本地存储 然后,我如何告诉组件呈现文章的“扩展”版本?重复使用“post”组件更好,还是我应该创建两个单独的组件,一个用于标题,另一个用于全文Reactjs 反应数据流,reactjs,Reactjs,我正在尝试创建一个博客应用程序,我对React的数据流模式有点困惑 我是否应该尝试在获取帖子后使用Redux之类的工具来存储所有帖子?我是否使用本地存储 然后,我如何告诉组件呈现文章的“扩展”版本?重复使用“post”组件更好,还是我应该创建两个单独的组件,一个用于标题,另一个用于全文 我知道这是一个两个问题,但它们有点联系在一起。提前感谢如果您想为React的下一个版本做好准备并拥有更短的代码,您应该尝试使用钩子并避免使用类 您可以根据需要组织代码,但更有趣的是,组件具有可伸缩性,并以不同的
我知道这是一个两个问题,但它们有点联系在一起。提前感谢如果您想为React的下一个版本做好准备并拥有更短的代码,您应该尝试使用钩子并避免使用类
您可以根据需要组织代码,但更有趣的是,组件具有可伸缩性,并以不同的属性重用它们以下是我自学6个月后对这些主题的了解 在我看来,React的内置功能足以处理中小型应用程序的
状态
(尤其是当您作为单个开发人员单独工作时)
如果您立即转向Redux,您将必须学习在单个不可变存储中处理状态的全新模式,以及如何将组件连接到它
由于最有可能异步获取数据,因此需要一个助手库来异步处理Redux:Redux-thunk
或Redux-saga
因此,从一开始,您就必须添加:
- 重演
- 反应还原
- 雷多克斯·图恩或雷多克斯传奇
因此,我向你推荐: 学习基本反应(通过课堂): 然后学习React hook(您基本上可以忘记类组件): 仅在开始时使用React构建项目。看看情况如何。然后,您可以阅读更多关于Redux及其功能的信息,如果您真的需要它或不需要它,您将能够做出更好的选择
根据您对我们介绍的项目:
- 在树中较高的组件中为所有帖子保留一个
。可能在状态
组件本身内部 - 构建函数以获取和更新post数据,并使用响应更新状态
- 根据需要渲染多少组件。例如,在
中显示文章的完整信息,或在BlogPostComponent
中显示文章的简化版本,仅显示缩略图和标题BlogPostThumbnailCard
onclick
函数中只显示剩余的文章谢谢,我只是不想在这么小的应用程序中使用Redux,但我可以学习它。本地存储
不是用来存储博客文章的。你甚至不需要redux probablyThanks!我使用钩子和功能组件,而不是基于类的组件。我现在呈现帖子的方式是映射一个数组并呈现每篇帖子的标题,我很难理解如何只呈现列表中的一篇帖子,而不是所有帖子。非常感谢您的回复,非常体贴,非常感谢。我很好奇把我所有的帖子都存储在根目录下是否是个坏主意,但我不认为这是个坏主意。是否可以将提取的数据分离到自己的组件中,然后将其导入到或任何其他组件中,并将状态保存在自己的组件中?是的。例如,我的应用程序中有一个产品页面,需要获取一个产品的数据并显示在屏幕上。我通常做的是将页面分成两个部分ProductContainer
(它将保存产品的状态以及获取和更新它的所有函数)和ProductPage
(它将处理从ProductContainer
收到的道具的所有UI呈现)。非常感谢您的精彩评论,我非常感谢!你不需要将所有状态都保存在应用程序中。只是组件树中不同级别的许多子组件中需要的组件。例如:身份验证状态是应用程序内部的最佳候选状态。但您也可以在更小的组件组中拥有状态。如果他们是唯一需要它的人。就像我在上面关于产品页面的评论中所描述的一样。另外,如果已经创建了其他组件,并且它们需要访问某些当前不可用的本地状态,那么是时候提升状态了: