Skip to content
Discussion options

You must be logged in to vote

I looked into this a bit — this behavior is actually expected.

The key thing to understand is that isValidating is not field-level.

When you do:

fieldState: { error, isValidating }

you're indirectly subscribing to formState.isValidating, which is shared across the entire form.

Why all fields re-render

In react-hook-form, anything you read from formState creates a subscription.

So if multiple fields read isValidating:

  • one field changes
  • validation runs
  • isValidating updates
  • all fields using it re-render

That’s why removing isValidating improves performance.

What I’d suggest

  1. Don’t use isValidating inside fields (most cases). This keeps each field isolated and only re-renders when it actua…

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by bluebill1049
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants
Converted from issue

This discussion was converted from issue #13114 on June 05, 2026 08:33.