React.js:为什么这个事件在调用之前运行?

问题描述

在此代码中,insertvariable()函数调用之前运行,这会导致我的程序出错。但是,如果我没有为此函数定义任何参数,那么我的代码可以正常工作

 class MyComponent extends React.Component {
    constructor(props) {
      super(props);
      };
    insertvariable = actionType => {
    
    };
        
        render(){
        return(
        <div>
         <Button
           key="btnDone"
           onClick={this.insertvariable('done')}
         >
           Done
         </Button>,<Button
           key="btnAdd"
           type="primary"
           onClick={this.insertvariable('add')}
         >
           Add
         </Button>
        </div>
        )
        }
    }

解决方法

您正在onClick函数中调用它。更改为

onClick={()=>this.insertVariable('add')}