React.useEffect 缺少依赖项 - 状态

React.useEffect missing dependency - state

我收到错误 "React Hook React.useEffect has a missing dependency: 'openPosts'",其中 openPosts 在 Hook 中处于状态。

export const Posts = (props) => {

  const [openPosts, setOpenPosts] = React.useState([]); *openPosts is an array of numbers*

  React.useEffect(_ => {
    let filteredOpenPosts = openPosts.filter(num => num >= 1);
    setOpenPosts(filteredOpenPosts);
  }, [props.userId]);

我已经阅读过,但我不明白为什么会出现此错误。我可以忽略它吗?

我基本上希望 state 像上面那样通过 props.userId 中的更改进行过滤,并且认为这是一种干净的方法。我还可以创建更多状态来跟踪 props.userId 中的任何更改,但如果以上内容可行,我会更喜欢它。

如果你不想指定依赖,那么你可以试试这个,

React.useEffect(_ => {
    setOpenPosts(prevState => prevState.filter(num => num >= 1));
}, [props.userId]);