Maison  >  Questions et réponses  >  le corps du texte

MUI DatePicker n'est pas compatible avec Formik : date.isBefore n'est pas disponible

<p>J'utilise Formik pour créer un formulaire dans React et j'utilise également des composants MUI.Le problème est que j'obtiens l'erreur suivante : </p> <pre class="brush:php;toolbar:false;">date.isBefore n'est pas une fonction TypeError : date.isBefore n'est pas une fonction sur DayjsUtils.isBeforeDay (http://localhost:3000/static/js/bundle.js:2319:19) à validateDate (http://localhost:3000/main.aa62b4b6c891ec5ff2b0.hot-update.js:10596:43) sur useValidation (http://localhost:3000/main.aa62b4b6c891ec5ff2b0.hot-update.js:10654:27) sur usePickerValue (http://localhost:3000/main.aa62b4b6c891ec5ff2b0.hot-update.js:10019:75) sur usePicker (http://localhost:3000/main.aa62b4b6c891ec5ff2b0.hot-update.js:9876:94) sur useDesktopPicker (http://localhost:3000/main.aa62b4b6c891ec5ff2b0.hot-update.js:7848:60) sur DesktopDatePicker (http://localhost:3000/main.aa62b4b6c891ec5ff2b0.hot-update.js:3956:90) sur renderWithHooks (http://localhost:3000/static/js/bundle.js:103306:22) sur updateForwardRef (http://localhost:3000/static/js/bundle.js:105877:24) àbeginWork (http://localhost:3000/static/js/bundle.js:107924:20)</pre> <p>Voici mon code : </p> <pre class="brush:php;toolbar:false;"><Formik onSubmit={handleFormSubmit} initialValues={initialValuesProject} validationSchema={projectSchema} > {({ valeurs, handleChange, handleSubmit, setFieldValue }) => <form onSubmit={handleSubmit}> <Largeur de la boîte ="50%"> <LocalizationProvider dateAdapter={AdapterDayjs}> <Sélecteur de dates id="project_start" name="project_start" valeur={values.project_start} slotProps={{ champ de texte: { taille : "petit", marge : "dense", }, }} /> <Sélecteur de dates id="project_end" name="fin_projet" valeur={values.project_end} slotProps={{ textField : { taille : "petite", marge : "dense" }, }} /> </Provider de localisation> ≪/Boîte> </formulaire> )}≪/Formik>≪/pre> <p>Voici le mode et les valeurs initiales : </p> <pre class="brush:php;toolbar:false;">const projectSchema = yup.object().shape({ project_start : ouais.date(), project_end : ouais.date(), nom_du projet : yup.string().required("required"), userId : ouais.string(), ID partenaire : ouais.string(), CategoryId : ouais.string(), }); const initialValuesProject = { projet_start : Date.now(), projet_end : Date.now(), nom_projet : "", identifiant utilisateur : "", ID partenaire : "", ID de catégorie : "", };</pré> <p>Un grand merci à tous ceux qui pourront m'aider <3</p> <p>Être capable de faire fonctionner le sélecteur de date</p>
P粉046387133P粉046387133422 Il y a quelques jours616

répondre à tous(1)je répondrai

  • P粉449281068

    P粉4492810682023-08-26 00:12:31

    On dirait que le problème est là :

    project_start: Date.now(),
    project_end: Date.now(),

    Le type de project_start et project_end doit être Dayjs :

    import dayjs, { Dayjs } from 'dayjs';
    
    const initialValuesProject = {
      project_start: dayjs(Date.now()),
      project_end: dayjs(Date.now()),
      project_name: "",
      usersId: "",
      partnerId: "",
      categoryId: "",
    };

    répondre
    0
  • Annulerrépondre