Skip to content

Instantly share code, notes, and snippets.

@roger-dev-br
Created March 23, 2021 12:20
Show Gist options
  • Save roger-dev-br/49aba9579af6929c5cd282c6eb2d9a12 to your computer and use it in GitHub Desktop.
Save roger-dev-br/49aba9579af6929c5cd282c6eb2d9a12 to your computer and use it in GitHub Desktop.
Instalação e utilização do YUP

Instalação e utilização do YUP

1. Instalar o pacote

yarn add yup

2. Criar o arquivo JS para validação

import * as Yup from 'yup';

export default async (req, res, next) => {
    try {
        const schema = Yup.object().shape({
            name: Yup.string()
                .min(3, 'O nome do estádio deve conter no mínimo 3 caracteres')
                .required('Informe o nome do estádio'),
            capacity: Yup.number().required().positive().integer(),
            time_id: Yup.number().required('Informe o time').positive().integer(),
        });

        await schema.validate(req.body);
        return next();
    } catch (error) {
        return res.status(400).json({
            message: error.message
        });
    }
};

3. Importar o validator como Middleware na rota.

routes.post(
    '/estadios',
    validateEstadio,
    EstadioController.store
);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment