你瞅啥呢

2021/03/16 React里onClick写法问题

2021/03/16
在React语法的定义中,js的onclick变成了onClick,这个大写的C有点不一样,怎么个不一样法呢,请看下面:
const edit = (record) => {
message.info(JSON.stringify(record));
}
我先定义一个方法,然后绑定到一个按钮身上:<Button>编辑</Button>
现在有两种写法:
1、<Button onClick={() => edit(record)}>编辑</Button>
2、<Button onClick={edit(record)}>编辑</Button>

这两种写法由于中间少了()=>这么个玩意儿,结果就是:
1、页面加载,没有点击的情况下没有打印数据,点击按钮触发一次edit方法并打印数据,正常;
2、页面加载,没有点击的情况下打印数据10来次,edit方法在页面加载的时候触发了10来次,点击按钮触发一次edit方法并打印数据,不合常理;
差异这就来了。所以正确的写法是要加上()=>这么个玩意儿。

posted @ 2022-04-01 17:39  叶乘风  阅读(122)  评论(0)    收藏  举报