Tengo este componente de clase en el que me gustaría obtener la respuesta del servidor a una matriz de estado para poder pasar más elementos a otro componente como accesorios, hasta ahora tengo esto:
export default class MainApp extends Component { state = { posts: [], } constructor(props){ super(props); const request = new FetchRequest(); request.setAmount(this.props.amount); request.setUserid(this.props.token); request.setSeenpostsList(this.props.seenPosts); var stream = client.fetchPosts(request, {}); stream.on('data', function(response) { this.setState({ posts: [...this.state.posts, response.array] }) }); } render(){ return( <div className="main-app"> <Navbar /> <Postbox token = {this.props.token}/> {this.state.posts.map(element => <Postcard username = {element[0]}/> )} </div> ) } Con este código obtengo TypeError: Cannot read properties of undefined (reading 'posts') .
¿Cuál es la forma correcta de hacerlo?
Su estado debe inicializarse dentro del constructor() {}
constructor(props) { super(props); this.state = { posts: [] } }Aquí hay información que quizás también desee leer