小编典典

componentDidMount是否等效于React函数/ Hooks组件?

reactjs

是否可以componentDidMount通过钩子在React功能组件中进行仿真?


阅读 1185

收藏
2020-07-22

共1个答案

小编典典

对于钩子的稳定版本(反应版本16.8.0+)

对于 componentDidMount

useEffect(() => {
  // Your code here
}, []);

对于 componentDidUpdate

useEffect(() => {
  // Your code here
}, [yourDependency]);

对于 componentWillUnmount

useEffect(() => {
  // componentWillUnmount
  return () => {
     // Your code here
  }
}, [yourDependency]);

因此,在这种情况下,您需要将依赖项传递给此数组。假设您处于这样的状态

const [count, setCount] = useState(0);

每当计数增加时,您都希望重新呈现功能组件。那你useEffect应该像这样

useEffect(() => {
  // <div>{count}</div>
}, [count]);

这样,无论何时更新计数,组件都将重新呈现。希望这会有所帮助。

2020-07-22