首页 > 解决方案 > react 如何知道这个组件将被卸载?

问题描述

import React from 'react';

class App extends React.Component {
   constructor() {
      super();
      this.state = {
         delete: false,
      };
   }
   render() {
      return (
         <div>
            <h1>User List</h1>
            <button onClick={() => this.setState({ delete: true })}>
               Delete Users
            </button>
            {this.state.delete ? null : <User />}
         </div>
      );
   }
}

class User extends React.Component {
   componentWillUnmount() {
      alert('Deleted User successfully');
   }
   render() {
      return (
         <div>
            <h3>Username: Rahul</h3>
            <h3>Email: rbbansal558@gmail.com</h3>
         </div>
      );
   }
}
export default App;

在这个代码示例中,有两个类,一个是 App,另一个是 User 类。那么,React 是如何知道 User 类将被卸载的呢?

标签: javascriptreactjs

解决方案


React 负责卸载组件,并且由于 react 管理其所有组件的生命周期,它知道它正在卸载组件,因此它调用 componentWillUnmount。它全部在文档中。https://reactjs.org/docs/react-component.html


推荐阅读