-
Notifications
You must be signed in to change notification settings - Fork 75
Open
Description
Current Behavior
In the DataConnect React library, query invalidation in mutations doesn't work as described when passing in a reference instance without parameters.
As described in the documentation, if I pass in just the reference to the query, it should invalidate all queries cached:
const createMovie = useDataConnectMutation(createMovieRef, {
invalidate: [getMovieRef],
});This will actually also trigger a TypeScript error:
Type 'GetMovieRef' is not assignable to type 'QueryRef<unknown, unknown> | (() => QueryRef<unknown, unknown>)'.
Type 'GetMovieRef' is not assignable to type '() => QueryRef<unknown, unknown>'.
Target signature provides too few arguments. Expected 1 or more, but got 0.ts(2322)
Even after ignoring the TS error, the query does not get invalidated after the mutation executes in the app.
However, it works as intended if a parameter is specified to invalidate a specific record:
const createMovie = useDataConnectMutation(createMovieRef, {
invalidate: [getMovieRef({ id: "1" })],
});Expected Behavior
Passing in a query reference without parameters to the invalidate option in mutations should invalidate ALL of its cached queries.
andjoh12cabljac
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Status
Opened