Reactjs 当函数由arrow函数声明时,为什么不需要使用()执行函数?
Hi arrow函数问题再次出现:( 这是我的部分代码 如你所见,首字母****是函数。对吗?? dateRangeArr也是函数 问题是 我调用dateRageArr()来使用 但最初的废话,比如initialPage,initialRowsPerPage 我不需要使用() 我想知道为什么Reactjs 当函数由arrow函数声明时,为什么不需要使用()执行函数?,reactjs,react-hooks,Reactjs,React Hooks,Hi arrow函数问题再次出现:( 这是我的部分代码 如你所见,首字母****是函数。对吗?? dateRangeArr也是函数 问题是 我调用dateRageArr()来使用 但最初的废话,比如initialPage,initialRowsPerPage 我不需要使用() 我想知道为什么 非常感谢:)这是因为如果函数作为参数传递,则useState将立即调用该函数。而通常,您需要使用()来调用函数 为了演示,下面我将函数传递给useState,而不是实际值 const MyTest
非常感谢:)这是因为如果函数作为参数传递,则
useState
将立即调用该函数。而通常,您需要使用()
来调用函数
为了演示,下面我将函数传递给useState
,而不是实际值
const MyTest = () => {
const func = () => {
return 'my func result';
}
[val, setVal] = React.useState(func);
// ^ no ()
return 'initial state: ' + val;
};
结果:
初始状态:我的func结果
如您所见,这将产生与执行以下操作相同的结果:
[val, setVal] = React.useState(func());
// ^^ explicitly call it
这只是一个助手功能,您可以传递一个函数,而不必显式调用它。我读了几遍您的问题,但我不明白您在问什么,您可能需要尝试重新表述一下。