Skip to main content

useCsRqAdvancedMutateLoadEvent

useCsRqAdvancedMutateLoadEvent は、API 呼び出し方式が Orval(拡張版)に対応する更新系 API ロードイベントを初期化するためのフックです。 複雑な検索条件などがあり POST でリクエストを渡して検索することを想定したロードイベントです。

シグネチャ

useCsRqAdvancedMutateLoadEvent
 <TApiRequest, TApiResponse, TApiError, TContext = unknown>
(mutationResult: RqAdvancedMutationResult
 <TApiResponse, TApiError, TApiRequest, TContext>,
 request: TApiRequest):
CsRqAdvancedMutateLoadEvent
 <TApiRequest, TApiResponse, TApiError, TContext>

引数

引数名必須説明
mutationResultRqAdvancedMutationResult<TApiResponse, TApiError, TApiRequest, TContext>*¹TanStack Query の useMutate を使ったカスタムフックを指定します。
requestTApiRequestAPI リクエストのパラメータを指定します。

*1:RqAdvancedMutationResultは API のリクエスト、レスポンス、エラー、コンテキストに関する情報を保持する型定義です。

返り値

API のレスポンス、成功・失敗のステータスなどの情報が含まれるCsRqAdvancedMutateLoadEventクラスのインスタンスを返します。

使用例

export const useTodoComplexSearchView = (): TodoComplexSearchView => {
const title = useCsInputTextItem("検索するタイトル", useInit(""), stringRule(false));
const description = useCsTextAreaItem("検索する説明文", useInit(""), stringRule(false));

return useCsView(
{
title: title,
description: description,
loadEvent: useCsRqAdvancedMutateLoadEvent(
useComplexSearchTodo(), // useMutateを返すカスタムフック
{ title: title.value ?? "", description: description.value ?? "" }
), // ロードイベントにリクエストを設定
}
);
};