docs: clarify useWatch exact prop default behavior#1206
Merged
bluebill1049 merged 1 commit intoreact-hook-form:masterfrom Apr 25, 2026
Merged
Conversation
Contributor
|
@dfedoryshchev is attempting to deploy a commit to the BEEKAI OSS Team on Vercel. A member of the Team first needs to authorize it. |
✅ Deploy Preview for sage-cassata-31d224 ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
bluebill1049
approved these changes
Apr 25, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The
exactprop row in theuseWatchprops table only describes whattruedoes and leaves the default behavior undefined. The reporter in #1035 notes they repeatedly have to read source to figure out what partial matching actually matches.Source of truth (
src/logic/shouldSubscribeByName.ts:3-18):So when
exactisfalse, the subscription fires whenever the subscribed name is a prefix of the changed field name or vice versa. The dedicated test atsrc/__tests__/logic/shouldSubscribeByName.test.ts:9-12pins this behavior (including the raw-string-prefix edge case whereshouldSubscribeByName('test1', 'test')is truthy). Call site atcreateFormControl.ts:1196invokes the function directly with no path normalization in between, so the prefix semantics apply end-to-end.Single-row content change in
src/content/docs/usewatch.mdx: replace the current one-liner with a description that states the default behavior in terms of the actual prefix check, with one concrete example for the typical nested-path case. No prettier reflow (the existingcomputerow already defines the column width).Closes #1035.