首页  >  文章  >  web前端  >  如何在 React 中向 onClick 事件传递值?

如何在 React 中向 onClick 事件传递值?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-27 00:32:11961浏览

How Do I Pass Values to onClick Events in React?

在 React 中将值传递给 onClick 事件

在 React 中,将值传递给 onClick 事件可能具有挑战性,导致意外的控制台输出。本文探讨了解决此问题的两种方法。

方法 1:使用箭头函数

最简单的方法是使用箭头函数,它可以捕获正确的上下文事件:

return (
  <th value={column} onClick={() => this.handleSort(column)}>{column}</th>
);

方法 2:创建子组件

更结构化的解决方案是创建一个处理 onClick 事件的子组件:

子组件(ES6)

class TableHeader extends Component {
  handleClick = () => {
    this.props.onHeaderClick(this.props.value);
  }

  render() {
    return (
      <th>
        <button onClick={this.handleClick}>{this.props.column}</button>
      </th>
    );
  }
}

主要组件(ES6)

return (
  {this.props.defaultColumns.map((column) => (
    <TableHeader
      value={column}
      onHeaderClick={this.handleSort}
    />
  ))}

ES5 的旧方法

在 ES5 中,你可以使用 .bind:

return (
  <th value={column} onClick={this.handleSort.bind(this, column)}>{column}</th>
);

通过利用这些方法,您可以有效地将值传递给 React 应用程序中的 onClick 事件。

以上是如何在 React 中向 onClick 事件传递值?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn