【问题标题】:React: Render JSX repeatedly with multiple onClicksReact:使用多个 onClick 重复渲染 JSX
【发布时间】:2023-03-30 19:49:01
【问题描述】:

【问题讨论】:

    标签: html reactjs


    【解决方案1】:

    这里有一个CodePen 来展示它

    class NewComponent extends React.Component {
      render() {
        return (
          <div {...this.props}>
            new component
          </div>
        );
      }  
    }
    
    class Button extends React.Component {
      render() {
        return (
          <button {...this.props}>
            click
          </button>
        );
      }  
    }
    
    class App extends React.Component {
      constructor() {
        super();
        
        this.state = {
          clicked: false
        };
        
        this.handleClick = this.handleClick.bind(this);
      }
      
      handleClick() {
        this.setState({
          clicked: true
        });
      }
      
      render() {
        return (
          <div>
            <Button onClick={this.handleClick} />
            {this.state.clicked ? <NewComponent /> : null}
          </div>
        );
      }
    };
    
    ReactDOM.render(
      <App />,
      document.getElementById("root")
    );
    <script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>
    <div id="root">loading...</div>

    【讨论】:

      猜你喜欢
      • 2019-05-08
      • 2021-08-24
      • 1970-01-01
      • 2020-09-18
      • 2021-10-14
      • 2021-10-11
      • 2015-01-17
      • 2018-01-11
      • 1970-01-01
      相关资源
      最近更新 更多