Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Método de Validação

Olá, após ver o método utilizado para a validação dos campos acabei ficando na dúvida se nesse exemplo não seria mais prático e funcional utilizar a validação no próprio HTML da pagina ? Transformando o Botão de enviar em Submit e capturando o evento no Form, parece ser uma maneira muito mais simples e bem menos confusa do que a utilizada no curso.

    render() {

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

        return (
            <form onSubmit={this._submitForm}>
                <div className="row">
                    <div className="input-field col s4">
                        <input
                            id="nome"
                            type="text"
                            name="nome"
                            value={nome}
                            onChange={this.inputListener}
                            className="validate"
                            required
                        />

                        <label htmlFor="nome" >Nome do Autor</label>
                    </div>


                    <div className="input-field col s4">
                        <input
                            id="livro"
                            type="text"
                            name="livro"
                            value={livro}
                            onChange={this.inputListener}
                            className="validate"
                            required
                        />

                        <label htmlFor="livro" >Nome do Livro</label>
                    </div>

                    <div className="input-field col s4">
                        <input
                            id="preco"
                            type="number"
                            name="preco"
                            value={preco}
                            onChange={this.inputListener}
                            min="0.00"
                            max="9999.00"
                            className="validate"
                            required
                        />

                        <label htmlFor="preco">Preço</label>
                    </div>
                </div>

                <button type="submit" className="waves-effect waves-light indigo lighten-2 btn">Salvar
            </button>
            </form>
        )
    };
1 resposta
solução!

Boa noite, meu xará! Como vai?

Sim, seria uma possibilidade. Contudo, o objetivo do instrutor era mostrar a possibilidade de montar lógicas de validação customizadas para atender situações não cobertas pelo HTML5.

Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software