Reactjs react(-native)-两种形式的调用函数

Reactjs react(-native)-两种形式的调用函数,reactjs,callback,Reactjs,Callback,我注意到,有时函数回调会传递给组件,它有两种形式: <Component onPress={() => handleSomething} /> <AnotherComponent onPress={(val) => handleValue(val)} /> handleSomething}/> handleValue(val)}/> 有时: <Component onPress={handleSomething} /> <AnotherC

我注意到,有时函数回调会传递给组件,它有两种形式:

<Component onPress={() => handleSomething} />
<AnotherComponent onPress={(val) => handleValue(val)} />
handleSomething}/>
handleValue(val)}/>
有时:

<Component onPress={handleSomething} />
<AnotherComponent onPress={handleValue(val)} />

在功能组件中,箭头函数版本是否与直接调用函数相同?如果没有,区别是什么,或者何时使用它们


谢谢

第一个版本有问题--您需要用括号调用
handleSomething()
,但我想我还是同意您的观点。顶级版本比较慢,可能没有更多的可读性。它们在每个渲染上分配一个额外的对象,这可能会很昂贵。不是很好,因为您可能正在处理一个功能组件,但同样的想法也适用。这也回答了你的问题吗?我猜从你发布的内容和功能组件上下文中的链接来看,唯一的区别是箭头形式在每个渲染上创建了对象。当涉及到我并不感兴趣的类组件时,它会产生更大的差异(即绑定)。谢谢