DevTool error in console when appending to Field Array
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 30/100
- Tipo di issue
- Bug
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- react, typescript
Direzione di ricerca
Start with the linked CodeSandbox, open the developer console, and click “Add Project” to reproduce and capture the missing error details. Trace the DevTool behavior triggered by appending to the field array and verify that the same action produces no console error when the issue is resolved.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Version Number
7.51.1
Codesandbox/Expo snack
https://codesandbox.io/p/sandbox/young-dust-9752gj?file=%2Fsrc%2FApp.js
Steps to reproduce
- Go to Code Sandbox
- Open up Dev Tools console
- Click on 'Add Project' button
Expected behaviour
There should be no errors:
import {
useForm,
FormProvider,
useFormContext,
useFieldArray,
} from "react-hook-form";
import * as yup from "yup";
import { yupResolver } from "@hookform/resolvers/yup";
import { ErrorMessage } from "@hookform/error-message";
import { DevTool } from "@hookform/devtools";
const validationSchema = yup.object().shape({
firstName: yup.string().required("First Name is required"),
Projects: yup.array().of(
yup.object().shape({
name: yup.string().required("Project title required"),
})
),
});
export default function FormPage() {
const methods = useForm({
defaultValues: {
firstName: "",
Projects: [{ name: "" }],
},
resolver: yupResolver(validationSchema),
});
const { handleSubmit, control } = methods;
const { fields, append } = useFieldArray({
name: "Projects",
control,
});
return (
<>
<div>
<FormProvider {...methods}>
<form
onSubmit={handleSubmit(
(data) => console.log("Valid", data),
(errors) => console.log("NOT valid", errors)
)}
>
<div>
<h1>Form</h1>
<InputField
title="First Name"
id="firstName"
placeholder="Jhon"
/>
{fields.map((field, index) => (
<div
key={field.id}
style={{
paddingLeft: "25px",
marginTop: "15px",
marginBottom: "15px",
}}
>
<InputField
id={`Projects.${index}.name`}
title={`Project ${index + 1}`}
/>
</div>
))}
<div style={{ paddingLeft: "25px", marginBottom: "15px" }}>
<button type="button" onClick={() => append({ name: "" })}>
Add Project
</button>
</div>
<button type="submit">Submit</button>
</div>
</form>
</FormProvider>
<DevTool control={methods.control} />
</div>
</>
);
}
const InputField: React.FC<{
id: string,
title: string,
type?: string,
placeholder?: string,
}> = ({ id, title, type, placeholder }) => {
const {
register,
formState: { errors },
} = useFormContext();
const inputType = type ? type : "text";
return (
<div>
<label style={{ display: "block" }}>{title}</label>
<input
id={id}
type={inputType}
{...register(id)}
placeholder={placeholder}
/>
<ErrorMessage
errors={errors}
name={id}
render={({ message }) => <div style={{ color: "red" }}>{message}</div>}
/>
</div>
);
};
What browsers are you seeing the problem on?
No response
Relevant log output
No response
Code of Conduct
- I agree to follow this project's Code of Conduct
- Lingua principale
- TypeScript
- Stelle
- 670
- Fork
- 55
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di react-hook-form/devtools
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
react-hook-form/devtools#234 · 1 commento · 5 reazioni ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 42/100
react-hook-form/devtools#226 · 3 reazioni ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 55/100
react-hook-form/devtools#223 · 2 reazioni ·
-
DevTools in production Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 25/100
react-hook-form/devtools#212 · 5 commenti · 8 reazioni ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
react-hook-form/devtools#208 · 13 commenti · 21 reazioni ·
Tutte le issue di react-hook-form/devtools
Issue simili
-
VerificationGate: ATTRIBUTION quote guard never matches a normal quotation (\b around the quote) Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
danielmiessler/LifeOS#2234 ·
-
T: Bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
-
Mend: dependency security vulnerability untriaged
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100