gpt4 book ai didi

javascript - React : . 映射不是函数

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:40:51 24 4
gpt4 key购买 nike

所以我对 react 还很陌生,我的大部分学习都是通过观看教程进行的,所以在这一点上,我从我的导师那里转移了注意力,开始用我自己的理解来实现它,然后我被抛出了以下错误

React: .map is not a function

这是代码

render() {

let person = null;

if (this.state.showPerson) {
person= (
<div>
{
this.state.person.map((el, index) => {
return <Person
key={el.id}
click={this.deletePersonHandler.bind(index)}
name={el.name}
age={el.age}
changed={(event) => this.eventSwitchHandler(event, el.id)} />
})
}
</div>
);
}
return (

错误发生在我实现eventSwitchHandler之后,这是我的switch handler代码

eventSwitchHandler = (event, id) => {

const personInput = this.state.person.find(checkID);

function checkID (passedID) {
return passedID.id === id
}
console.log("newP")
const newP = {...personInput}
console.log(newP)
newP.name = event.target.value
console.log(personInput)
this.setState ({person: newP})
}

[更新] 这是状态

state = {
person: [
{id: "name1n", name: "Rohit", age: 24},
{id: "name2l", name: "Hariom", age: 23},
{id: "name3g", name: "Vaibhav", age: 58}
],
someOtherState: "Untouched state",
showPerson: false
}

[更新] 这是我的讲师代码,他的名字更改处理程序等于我的 eventSwitchHandler

enter image description here同样,我的第一个问题是为什么 .map is not a function 发生错误,而在 console.logging 的东西,我观察到一些对我来说有点罕见的东西,我附上了截图(为什么两个地方的名字看起来都不一样?)

enter image description here

最佳答案

您的人似乎是一个 javascript 对象,而不是提供 map 功能的数组。

您可以在此处查看文档中的其余详细信息: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map

关于javascript - React : . 映射不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49788359/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com