/
githubmirror
/
react-hook-form
Обзор
Документация
Войти
/
githubmirror
/
react-hook-form
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
app/src/resetKeepDirty.tsx
69 строк
2 KB
DizzasTeR
🐞 fix #12097 Use dirty fields along with mount names for form reset with keepDirtyValues (#12211)
07 сен 2024, 03:45
Не верифицирован
07 сен 2024, 03:45
851e8bb
Код
Авторство
О чём код?
import React from 'react'; import { useForm } from 'react-hook-form'; function ResetKeepDirty() { const { register, reset, setValue, watch } = useForm<{ firstName: string; lastName: string; objectData: { test: string; }; users: { firstName: string; lastName: string }[]; deepNest: { level1: { level2: { data: string; }; }; }; }>({ defaultValues: { users: [] }, }); const users = watch('users'); return ( <> <input {...register('firstName')} /> <input name="users" value={`users#${users.length}`} /> <input {...register('objectData.test')} /> <input {...register('lastName')} /> <input {...register('deepNest.level1.level2.data')} /> <button onClick={() => { setValue( 'users', [...users, { firstName: 'John', lastName: 'Doe' }], { shouldDirty: true }, ); }} type="button" > Add item </button> <button type="button" onClick={() => reset( { firstName: 'bill', lastName: 'luo', objectData: { test: 'data' }, deepNest: { level1: { level2: { data: 'hey', }, }, }, users: [], }, { keepDirtyValues: true }, ) } > button </button> </> ); } export default ResetKeepDirty;