Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Erro no construtor

Erro muito estranho pq eu abri e fechei o construtor e ele aparece esse erro

  Line 8:17:  Parsing error: Unexpected token, expected ";"

   6 | function App() {
   7 | 
>  8 |   constructor() {
     |                 ^
   9 |     super();
  10 |     this.state = {lista : [{nome:'alberto', email:'alberto.souza@caelum.com.br',senha:'123456'}]};
  11 |   }
  }

5 respostas
solução

Boa noite, Raphael! Como vai?

O problema é que vc está utilizando um function component e na aula o instrutor utiliza um class component. Para comprovar isso veja que seu componente é definido através de uma função enquanto na aula o mesmo componente é definido por uma classe.

Além disso, esses cursos de React que vc está assistindo são antigos. Recomendo fortemente que vc assista os novos! Seguem os links:

https://cursos.alura.com.br/course/react-componentes-reutilizaveis

https://cursos.alura.com.br/course/react-validacao-rotas-api

Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!

Na classe component eu não consigo usar um construtor?

import React, { Component } from 'react'


constructor(props){
    super(props);

    this.stateInicial = {
        nome:'',
        livro:'',
        preco:'',
    }

    this.state = this.stateInicial;
}


class Formulario extends Component {

    render() {

        const {nome, livro, preco} = this.state;

        return (
            <form>

                <label htmlFor="nome">Nome</label>
                <input
                    id="nome"
                    type="text"
                    name="nome"
                    value={nome}
                />

                <label htmlFor="livro">Livro</label>
                <input
                    id="livro"
                    type="text"
                    name="livro"
                    value={livro}
                />


                <label htmlFor="preco">Preço</label>
                <input
                    id="preco"
                    type="text"
                    name="preco"
                    value={preco}
                />


                <button type="button">Salvar
                </button>
            </form>

        )

    }
}

ele aparece o mesmo tipo de erro e eu não sei resolver

Opa, Raphael! Na classe Formulario vc consegue criar um construtor sim. O problema nesse caso é que vc colocou o construtor fora da classe! O correto seria fazer assim:

class Formulario extends Component {

    constructor(props){
        // Código do construtor.
    }
}

Pegou a ideia? Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!

Ai entendi hahahaha Obrigado

Por nada, Raphael! Sempre que precisar de alguma ajuda é só mandar aqui no fórum da Alura!

Grande abraço e bons estudos, meu aluno!