から に移行しrelay 10
ていますが、からrelay 11
の呼び出しで奇妙なエラーが発生します。ここに私のコンポーネントがあります:refetch
useRefetchableFragment
const EditClient: FC<Props> = ({ clientRef }) => {
const [refetchData, refetch] = useRefetchableFragment<EditClientContactsRefetchQuery, any>(
graphql`
fragment EditClient_refetch_client on Client
@refetchable(queryName: "EditClientContactsRefetchQuery") {
contacts {
...ContactList_contact
}
}
`,
clientRef
);
return (
<>
<ContactList contact={refetchData.contacts} />
<button onClick={() => refetch({}, { fetchPolicy: 'network-only' })>
refetch
</button>
</>
);
}
次に、ボタンをクリックすると、graphql クエリが再フェッチされますが、エラーもスローされます。
react_devtools_backend.js:2430 警告: リレー:のフラグメントで
refetch
予想よりも高い優先度で予期しない呼び出しが行われました。優先度の高い更新で呼び出しを試みたようですが、コンポーネントを一時停止させる可能性のある更新は、通常の優先度でスケジュールする必要があります。フックから内部で呼び出していることを確認してください。EditClient_refetch_client
useRefetchableFragment()
refetch
refetch
startTransition()
useSuspenseTransition()
とは何ですか?イベントをhigh priority update
に配置する方法は? リレーのドキュメントには、関数の呼び出し方法は何も記載されていません。onClick
normal priority
refetch
refetch
call をコールバックに入れてもエラーは発生setTimeout
しませんが、それは正しくありません。