首页 > 解决方案 > react.js 中 ReactDOM.render 方法和组件渲染方法的区别

问题描述

我对文档中的这一点感到困惑。类组件已经得到了 render() 并返回。为什么在最后一行代码中,又出现了一个 ReactDom.render?

class LoginControl extends React.Component {
  constructor(props) {
    super(props);
    this.handleLoginClick = this.handleLoginClick.bind(this);
    this.handleLogoutClick = this.handleLogoutClick.bind(this);
    this.state = {isLoggedIn: false};
  }

  handleLoginClick() {
    this.setState({isLoggedIn: true});
  }

  handleLogoutClick() {
    this.setState({isLoggedIn: false});
  }

  render() {
    const isLoggedIn = this.state.isLoggedIn;
    let button;
    if (isLoggedIn) {
      button = <LogoutButton onClick={this.handleLogoutClick} />;
    } else {
      button = <LoginButton onClick={this.handleLoginClick} />;
    }

    return (
      <div>
        <Greeting isLoggedIn={isLoggedIn} />
        {button}
      </div>
    );
  }
}

ReactDOM.render(
  <LoginControl />,
  document.getElementById('root')
);

标签: reactjs

解决方案


组件渲染

返回一组用于创建 DOM 的指令。

ReactDom.render 方法

render 方法可以称为 React 和 DOM 之间的主要网关。它用于将我们的 React 代码注入 DOM。

检查这篇文章


推荐阅读