React中可以向onClick(onSubmit,onChange等同理)中传入一个函数,这个函数会在组件被click时执行:
1 | <button onClick={() => { |
这个函数可以接受一个参数,即event:
1 | <button onClick={(event) => { |
同时也可以在函数体中使用该component内,该函数外定义的其他变量,且这些变量不需要通过该函数的参数传入,e.g.
1 | // 假设外部定义了一个名为item的state变量,还有一个从上层component传递下来的callback函数 cbfunc() 需要使用该item变量 |
下面这种写法是错误的,即不需要将item作为参数传入,且第一个传入的参数会被当成event对象
1 | <button onClick={(item) => cbfunc(item)}> |