首页 > 解决方案 > 无法读取多个元素上未定义的属性“绑定”

问题描述

我正在尝试获取单击的按钮的值,但出现错误:Cannot read property 'bind' of undefined。我怎么写这个?

const activateLasers = (event) => {
  console.log(event.target.value)
}



const StarRating = (props) => {
    return (
     <div>
       <div onClick {this.activateLasers.bind(this)}> 
        <button value="a"> A </button>
        <button value="b"> B </button> 
        <button value="c"> C </button> 
        <button value="d"> D </button> 
        <button value="e"> E </button> 
      </div>
    </div>
   )
 }

标签: reactjs

解决方案


<div onClick={activateLasers}>

activateLasersStarRating函数范围内的普通变量。

this通常用于引用类的当前实例。但是没有为无状态 React 组件创建实例,因此它们不使用this. 更不用说this在箭头函数中的工作方式非常不同。

this在 MDN 上了解更多信息


推荐阅读