【问题标题】:onClick function in React not working?React 中的 onClick 功能不起作用?
【发布时间】:2016-11-03 22:20:45
【问题描述】:

我的简单反应代码是:

main.js:

var ReactDom = require('react-dom');

var Main = React.createClass({
    render: function(){
    return(
        <div>

            <a onClick={alert("hello world")} >hello</a>

    </div>

        )

    }
});

在控制台出现错误:

TypeError: listener 必须是函数

错误:

在运行此代码时,我得到的是警报功能,而不是 这应该是点击功能。

注意:我使用的是 flux 结构,但给定文件中没有填充数据。

提前致谢

【问题讨论】:

  • 您是否尝试过将警报代码封装在匿名函数中?
  • alert.bind(this, 'hello world')
  • 尽量避免在渲染函数中绑定,如果不需要类“this”上下文,您可以在构造函数中或类声明之外执行此操作。

标签: javascript reactjs react-jsx flux


【解决方案1】:

你应该给onClick一个可以在点击事件上调用的函数,所以你应该将警报包装在一个匿名函数中,例如

var ReactDom = require('react-dom');

var Main = React.createClass({
    render: function(){
        return (
            <div>
                 <a onClick={function () {alert("hello world")}} >hello</a>
            </div>
        )
    }
});

【讨论】:

    【解决方案2】:

    您应该将警报包装在一个函数中,您可以使用粗箭头来完成这项工作

    <a onClick={() => alert("hello world")} >hello</a>
    

    【讨论】:

      猜你喜欢
      • 2021-10-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多