首页 > 解决方案 > () => someFunc 和 someFunc 之间的区别

问题描述

我有一个反应组件

import React from 'react';

function App() {

  const someFunc = () => {
    console.log('clicked');
  }

  return (
    <div >
      <button onClick = {() => someFunc}>Button 1</button>
      <button onClick = {someFunc}>Button 2</button>
    </div>
  );
}

export default App;

onClick = {() => someFunc}调用和调用有什么区别onClick = {someFunc}。提前感谢您的帮助。

标签: reactjsfunctioncomponents

解决方案


onClick = {() => someFunc}

这只是返回对someFunconClick 处理程序何时运行的引用。这不会做任何事情(不会像你期望的那样工作)。

onClick = {someFunc}

这是传递一个直接引用,someFunction在调用 onClick 处理程序时将调用该引用。你可以考虑把someFnnction's body 放在这里,就像这样

onClick = {() => {
    console.log('clicked');
  }}

推荐阅读