Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何用组件生命周期替换useEffect挂钩?_Reactjs_React Hooks - Fatal编程技术网

Reactjs 如何用组件生命周期替换useEffect挂钩?

Reactjs 如何用组件生命周期替换useEffect挂钩?,reactjs,react-hooks,Reactjs,React Hooks,我被迫使用基于类的组件,因此如何在我的React组件中用组件生命周期替换useEffect,如componentDidMount、componentDidUpdate和componentWillUnmount。 请帮忙 const App = () => { useEffect(() => { store.dispatch(loadUser()); }, []); 正如React团队在本文中提到的 挂钩是React 16.8中新增的一项功能。它们允许您在不编写类的情

我被迫使用基于类的组件,因此如何在我的React组件中用组件生命周期替换
useEffect
,如componentDidMount、componentDidUpdate和componentWillUnmount。 请帮忙

const App = () => {
  useEffect(() => {
    store.dispatch(loadUser());
  }, []);

正如React团队在本文中提到的

挂钩是React 16.8中新增的一项功能。它们允许您在不编写类的情况下使用状态和其他React特性

因此,如果要使用生命周期,必须使用
class

使用扩展
组件的类,它必须如下所示:

import React from 'react';

class App extends React.Component {
  //you can use components lifecycle here for example : 

  componentDidMount() {
    store.dispatch(loadUser());
  }
}

完成构造函数后,应将componentDidMount方法放在前面,如下所示:

class yourComponent extends Component {
   constructor(props){
      // constructor taks...
   }

   componentDidMount() {
      // what you want to do when the component mount
   }
}

对于特定的
useffect
调用,出于好奇,请使用
componentDidMount
,为什么必须使用基于类的组件?