javascript - .map() 参数未定义

标签 javascript reactjs

我有一个包含数据的数组,我想将数据与 event.target.value 进行比较 当它是相同的值时,我希望它获得有关数组该位置中数据的更多信息。

它说字符未定义,我想这是一个范围问题,但我不知道如何解决它。

console.log(character.mass, character.height) 用于测试目的。

handleClick(event){

        event.preventDefault();
        const CharacterDataArray = this.props.CharacterData.results
        console.log(CharacterDataArray)

        if(CharacterDataArray.map(character => character.name === event.target.value)) {
            console.log(character.mass, character.height)
        }
        this.setState({
            CharacterName: event.target.value
        })
}

最佳答案

你需要使用箭头函数来解决像

这样的scop问题
 handleClick =(event)=>{
  // your code goes here 
}

或者你可以在构造函数中绑定(bind)点击事件

constructor () {
this.handleClick = this.handleClick.bind(this);
}

关于javascript - .map() 参数未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58059623/

相关文章:

javascript - 更改默认 iframe src onclick 并在页面刷新后保留 src?

javascript - 有 Metro 风格的日期选择器吗?

javascript - 如何使我的 eBay 搜索栏特定于我的商店?

reactjs - 如何在 react / typescript 中使用枚举作为 Prop

javascript - 嵌入音频

javascript - 单击 jschart 实体时获取文本

reactjs - Next.js 动态路由就在索引之后

javascript - ReactJS 中的导出(默认)类

javascript - react 意外的数字呈现

html - React 生态系统中的安全字符串输出