Concaténer les noms de yup et réagir-hook-form lors de l'utilisation d'un tableau d'objets
<p><br /></p><h4>J'essaie de combiner <code>react-hook-form</code> avec <code> code> ;yup</code> a été connecté, mais une erreur a été rencontrée. Mon objectif est de passer un nom comme <code>exampleArray${index}.exampleProp</code> puisque je vais rendre la zone de saisie en boucle. </h4>
<p>Un exemple simple :</p>
<pre class="brush:php;toolbar:false;">import * as yup from "yup" ;
importer { useForm } depuis "react-hook-form" ;
importer { yupResolver } depuis "@hookform/resolvers/yup" ;
schéma const = ouais.object().shape({
exempleArr : ouais.array().of(
ouais.object().shape({
exempleProp:oui.string()
})
)
});
tapez FormValues = yup.InferType<typeof schema>;
exporter la fonction par défaut App() {
méthodes const = useForm<FormValues>({
résolveur : yupResolver (schéma)
});
retour (
<input type="text" {...methods.register("exampleArr[0].exampleProp")} />
);
}</pré>
<blockquote>
<p>Le paramètre de type '"exampleArr[0].exampleProp"' ne peut pas être attribué au type '"exampleArr" | <code>exampleArr.${number}</code> { numéro}.exampleProp</code>'. </p>
</blockquote>
<p>Exemple dans codesandbox : https://codesandbox.io/s/funny-orla-97p8m2?file=/src/App.tsx</p>