Javascript 我应该在我的组件中使用redux(connect)的状态还是从父组件传递道具?

Javascript 我应该在我的组件中使用redux(connect)的状态还是从父组件传递道具?,javascript,reactjs,redux,Javascript,Reactjs,Redux,显然,我不再使用本地状态,因为我的状态现在包含在Redux容器中 但对于无状态组件,我只是使用道具传递它们需要的数据 我想核实一下这是否正常 下面是一个无状态组件的示例,该组件从其父级接收数据并将数据传递给其子级 父元素正在使用Redux。(未显示) 有没有一个很好的参考呢?i、 e.文件 import React from 'react'; import FrameFaveTagFave from './FrameFaveTagFave.jsx'; const FrameFaveTag =

显然,我不再使用本地状态,因为我的状态现在包含在Redux容器中

但对于无状态组件,我只是使用道具传递它们需要的数据

我想核实一下这是否正常

下面是一个无状态组件的示例,该组件从其父级接收数据并将数据传递给其子级

父元素正在使用Redux。(未显示)

有没有一个很好的参考呢?i、 e.文件

import React from 'react';
import FrameFaveTagFave from './FrameFaveTagFave.jsx';

const FrameFaveTag = function(props) {
  const bookmarks = props.bookmarks.map((bookmark) =>
    <FrameFaveTagFave bookmark={bookmark} key={bookmark.id} />
  );
  return (
    <div className="bookmark_page" id="{props.tag}" >
      <div className="bookmark_tag_title">
        <p className="bookmark_tag_title_p">
          {props.tag}
        </p>
      </div>
      {bookmarks}
    </div>
  )
}

export default FrameFaveTag;
从“React”导入React;
从“./FrameFaveTagFave.jsx”导入FrameFaveTagFave;
const FrameFaveTag=函数(道具){
const bookmarks=props.bookmarks.map((书签)=>
);
返回(

{props.tag}

{书签} ) } 导出默认FrameFaveTag;
这取决于您遵循的惯例。每当我制作一个应用程序时,我都喜欢在redux中保留与应用程序的多个部分相关的状态。假设您在应用程序挂载用户帐户信息、权限信息等时获取数据,我更希望这些信息处于我的redux状态,我可以访问应用程序中的任何位置。但是假设一个状态只对一个组件有意义,我想把它放在组件的状态中。例如,您可以打开/关闭一个模态或第三个窗格等。您也可以将其置于redux状态,但将其置于React组件的状态是有意义的。如果你想让所有东西都成为你应用程序中的一个功能组件,你不妨看看它的实用方法。redux作者的回答将让您更深入地了解何时应该在应用程序的redux中存储状态

编辑:


如果在组件中使用
connect
还是从父级传递道具之间存在比较,那么我倾向于使用
passing from parent
比connect好一点,因为尽管
connect
使组件只监听组件的相关状态更改,然后重新呈现,但它仍然没有要进行比较,请检查与该组件相关的状态是否已更改

这个答案有点离题,因为我问的是一个无状态组件,以及通过道具或redux发送数据的最佳实践是什么。它没有地方政府。我在我的应用程序中使用
recompose
,将几乎所有组件都写为无状态,然后用实用程序包装。另外,你问的问题是基于意见的。我不知道我有多正确,但我倾向于在我的应用程序中很少使用
connect
。虽然
connect
将只侦听与它相关的状态更改(在组件中),但它必须检查哪些状态已更改。因此,最好从父级传递数据。我希望我能正确理解你的问题。如果你觉得这是正确的,我将编辑我的答案。您好,欢迎来到SO。“我想验证这是否正确?”这一问题过于模糊,不符合社区指导原则,因此请更新您的问题和标题,以明确您的意思,避免争论和广泛解释。此外,“在某些地方是否有很好的参考资料?即文档?”的要求总是与主题无关。