Reactjs 从对象列表生成详细信息页面的最佳方法是什么?

Reactjs 从对象列表生成详细信息页面的最佳方法是什么?,reactjs,Reactjs,在我的React项目中,当用户从存储列表中单击一个对象时,我使用组件传递存储对象。但是,如果我使用这种方式,我无法通过链接访问,即使用户通过单击链接获得url。当我从事搜索引擎优化SEO工作时,我需要允许用户通过url访问商店详细信息页面 组件示例 我通过API获取数据。如果是这样,建立链接的最佳方式是什么?我是否应该创建一个API,其中包含一个参数,该参数引用了存储的详细信息页?您的组件应该是自给自足的,而不是将存储从传递到组件。因此,当用户直接打开路由时,比如说/books,您的组件将负责:

在我的React项目中,当用户从存储列表中单击一个对象时,我使用组件传递存储对象。但是,如果我使用这种方式,我无法通过链接访问,即使用户通过单击链接获得url。当我从事搜索引擎优化SEO工作时,我需要允许用户通过url访问商店详细信息页面

组件示例


我通过API获取数据。如果是这样,建立链接的最佳方式是什么?我是否应该创建一个API,其中包含一个参数,该参数引用了存储的详细信息页?

您的组件应该是自给自足的,而不是将存储从传递到组件。因此,当用户直接打开路由时,比如说/books,您的组件将负责:

首先从API中获取所需的数据并将其保存在存储中。 之后,它将呈现所有的书籍。 我建议你读一下


根据上述流程,容器将负责第1步的数据获取,而呈现组件将负责第2步的书籍呈现。

像这样/store/details?是的,但重点不是url的外观。关键是,如果我以上述方式使用链接组件,人们无法通过url直接访问详细页面,而不使用链接用户可以直接进入该链接,为什么不呢?谢谢!因此,基于此,我提出了以下建议。当我点击商店的图片时,点击会将商店的id号作为道具传递给或类似的东西。之后,container.js获取id号prop并使用它获取API以获取存储数据。我想的方向对吗?谢谢你的仔细检查!
<Link
  to={{
    pathname: `/${store.domainKey}`,
    state: { store: store }
  }}
>
  <img ...>
</Link>