反应onClick事件

Iva*_*and 18 reactjs react-jsx

我错过了什么.这是一个非常简单的hello世界,目标是在onClick上发出一个警报事件.页面加载时会触发事件,但单击按钮时则不会触发.我很感激帮助.这是一个让它更容易看到的jsFiddle:jsFiddle

var Hello = React.createClass({
render: function() {
    return <button onClick={alert("Hello World!")}>
               Click Me
            </button>;
}
React.render(<Hello />, document.getElementById('container'));
Run Code Online (Sandbox Code Playgroud)

Chr*_*kes 25

我认为你错了,因为ReactJS只是JavaScript我不认为你解雇这个事件的方式会起作用.您的onClick应该像这样触发附加到React元素的函数.

var Hello = React.createClass({
    myClick: function () {
        alert("Hello World!");
    },
    render: function() {
        return <button onClick={this.myClick}>
                   Click Me
                </button>;
    }
});

React.render(<Hello />, document.getElementById('container'));
Run Code Online (Sandbox Code Playgroud)

  • 这段 React 代码在 2018 年的 Codepen 中似乎不起作用。我将 React.render 更改为 ReactDOM.render,但仍然没有按钮显示在页面上。 (2认同)

arm*_*eys 12

注意:如果你想要快速/内联的东西,这是另一种方法:

<button onClick={()=>{ alert('alert'); }}>alert</button>
Run Code Online (Sandbox Code Playgroud)