所以我试图用一个按钮的按钮 onClick 生成一个 div,但我收到一个错误,阻止我这样做。
错误:TypeError: this.state.addroom.map is not a function
但是我看到,当我单击按钮时,它不会显示错误,但也不会生成带有按钮的 div。
这是我的代码:
import React, { Component } from 'react';
import Select, { components } from 'react-select';
import styles from '../styles/loginsignup.css'
import axios from 'axios'
import nextId from "react-id-generator";
export default class AccomodationInfo extends Component {
constructor() {
super();
this.state = {
accomcate: null,
addroom: ['one'],
isLoading: true,
}
}
handleClick = event => {
const htmlId = nextId()
event.preventDefault()
const addroom = this.state.addroom
this.setState({ addroom: htmlId })
return (
<div>
{this.state.addroom.map(addrooms => (
<button key= {addroom.id} className={addrooms.modifier}>
{addrooms.context}
</button>
))}
</div>
);
}
render() {
return(
<div>
<button onClick={this.handleClick}>Add</button>
</div>
)
}
}
}
任何人都知道是什么原因造成的以及我们如何解决它?
函数式编程
相关分类