如何在React中将变量传递给函数

时间:2019-03-10 00:17:59

标签: javascript reactjs function

我想将参数传递给deleteUndone,以便当用户激活completeTodo时,它将使用指定的参数调用deleteUndone,但不知道如何操作?

deleteUndone = e => { 
   do something
}

completeTodo = e => {
   completeUndone(e.target.id)
   do more stuff ...
}

2 个答案:

答案 0 :(得分:1)

一种解决方法是在render方法中创建一个新函数,并将事件与所需的其他任何参数一起传递。

示例

class App extends React.Component {
  deleteUndone = (e, param) => {
    // do something...
  };

  completeTodo = e => {
    completeUndone(e.target.id);
    // do more stuff...
  };

  render() {
    return (
      <div>
        {/* ... */}
        <button onClick={e => this.deleteUndone(e, "foo")}> Click me </button>
        {/* ... */}
      </div>
    );
  }
}

答案 1 :(得分:0)

deleteUndone=(parameter1,parameter2)=>{
    //do some stuff           
}

要调用deleteUndone,请使用此运算符。假设在组件的状态中定义了a,b。也可以在函数范围内定义参数。

completeTodo = e => {    
   const {a,b}=this.state;
   completeUndone(e.target.id)
this.deleteUndone(a,b);

}