如何在reactjs中的ul,li或div中触发click事件

时间:2018-02-28 12:31:51

标签: reactjs jsx

我正在尝试触发reactjs组件中的click事件,但它无法正常工作。我在divulli甚至是按钮中尝试过此操作失败。我有一个演示here

我看过this question,但问题不是我面临的问题,可以在上面的演示中看到

2 个答案:

答案 0 :(得分:2)

onClick接受为函数,将被写为

<button onClick={() => {console.log("Hi")}}>Hello</button>

handleClick() {
    console.log('Hi');
}
<button onClick={this.handleClick}>Hello</button>

而不是

<button onClick={console.log("Hi")}>Hello</button>

如果您撰写onClick={console.log("Hi")},则会在每个render上评估onClick的值,因此Hi上会显示console

答案 1 :(得分:1)

您应该在事件处理程序中提供一个函数,而不是调用该函数。参见:

import React from "react";
import { render } from "react-dom";

const App = () => (
  <div>
    <div>
      <button onClick={() => {console.log("Hi")}}>Hello</button>
    </div>
  </div>
);

render(<App />, document.getElementById("root"));