Bonjour à tous,
La page ne s'affiche pas, j'utilise react
j'utilise la librairie formik
Il me marque aucune erreur.
S'il vous plait ?
Pouvez vous m'aider ?

import React from 'react';
import ReactDOM from 'react-dom';
import { Formik, Field, Form, ErrorMessage } from 'formik';

  const App =()=>{

    <Formik
      initialValues={{ email: '', password: ''}}
      validate={values => {
        const errors = {};
        if (!values.email){
          errors.email = 'Required';
        }
        else if(!/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i.test(values.email))
          {
            errors.email = 'Invalid e-mail address';
          }  
          return errors;
      }}
      onSubmit={(values, {setSubmitting}) =>{
        console.log(JSON.stringify(values, null, 2));
        setSubmitting(false);
      }} >

    { 
      ({isSubmitting})=> (
        <Form>
          <Field type="email" name="email" />
          <ErrorMessage name="email" component="div" />
          <Field type="password" name="password" />
          <ErrorMessage name="password" component="div" />
          <button type="submit" disabled={isSubmitting}>
            Submit
          </button>
        </Form>
      )
    }
    </Formik>

    };

export default App

3 réponses


Bonjour,

Pour ta fonction fléchée tu utilises des accolades au lieu des parenthèses, il faudrait modifier par :

const App = () => () 

Tu peux aussi utiliser la syntaxe accolades mais dans ce cas il faut explicitement mettre un return...

Edit : comme ta fonction est sur plusieurs lignes en fait tu es obligé de faire accolades + return 😉

Bonjour,
Merci pour tout.
Je vais essayer.

C'est bon cela a marché, merci encore.