Когда componentWillUnmount вызывается с асинхронными функциями? - PullRequest
0 голосов
/ 25 апреля 2020

В настоящее время я нахожусь в учебном курсе, где в моем жизненном цикле componentDidMount() определена функция async, а затем она вызывается в жизненном цикле componentWillUnmount().

class Example extends Component {
    constructor() {
        super()
        this.state = { name: ''}
    }

    myAsyncFunction = null;

    componentDidMount() {
        this.myAsyncFunction = async () => {
            // do some stuff
        }
    }

    componentWillUnmount() {
        this.myAsyncFunction();
    }
}

Я думал, что componentWillUnmount() вызывается только в соответствии с документами , только перед тем, как быть уничтоженным или размонтированным. В моем приложении функция вызывается последовательно, но я не вижу, как это может быть, если компонент не уничтожается. Почему бы просто не определить функцию в компоненте Example и вызвать ее при монтировании?

...