一次设置钩子的状态

时间:2020-10-30 14:59:02

标签: reactjs

我不明白为什么要跑步:

  interface Xxx {
    str: string
  }

  const [xxx, setXxx] = useState<Xxx>();

  function getData() {
    setXxx({
      str: "aaa"
    });
  }

  getData()

然后,钩子一直一直被设置。如何一次运行getData

1 个答案:

答案 0 :(得分:3)

要在组件init上仅执行一次方法,可以使用钩子useEffect:

useEffect(() => {
  getData()
}, []);

这类似于反应生命周期方法componentDidMount

某些文档:https://reactjs.org/docs/hooks-effect.html#tip-optimizing-performance-by-skipping-effects