useSubmit
<Form>
の命令型バージョンで、ユーザーではなくプログラマーがフォームを送信できるようにします。
シグネチャ
targetOrData
次のいずれかを指定できます。
HTMLFormElement
インスタンス
FormData
インスタンス
FormData
としてシリアライズされるプレーンオブジェクト
JSON としてシリアライズされるプレーンオブジェクト
options
送信のオプションで、<Form>
の props と同じです。すべてのオプションは省略可能です。
- action: 送信する href。デフォルトは現在のルートパスです。
- method: POST のような使用する HTTP メソッド。デフォルトは GET です。
- encType: フォーム送信に使用するエンコードタイプ:
application/x-www-form-urlencoded
、multipart/form-data
、application/json
、またはtext/plain
。デフォルトはapplication/x-www-form-urlencoded
です。 - navigate: ナビゲーションを実行する代わりに、フェッチャーを使用して送信する場合は
false
を指定します。 - fetcherKey:
navigate: false
を介してフェッチャーを使用して送信する場合に使用するフェッチャーキー。 - preventScrollReset: データが送信されたときに、スクロール位置がウィンドウの上部にリセットされるのを防ぎます。デフォルトは
false
です。 - replace: 新しいエントリをプッシュする代わりに、履歴スタック内の現在のエントリを置き換えます。デフォルトは
false
です。 - relative: 相対ルート解決の動作を定義します。
"route"
(ルート階層に対して相対的) または"path"
(URL に対して相対的) のいずれかです。 - flushSync: このナビゲーションの初期状態の更新を、デフォルトの
React.startTransition
呼び出しの代わりにReactDOM.flushSync
呼び出しでラップします。 - viewTransition: 最終的な状態の更新を
document.startViewTransition()
でラップすることにより、このナビゲーションの View Transition を有効にします。- このビュー遷移に特定のスタイルを適用する必要がある場合は、
useViewTransitionState()
も活用する必要があります。
- このビュー遷移に特定のスタイルを適用する必要がある場合は、
useSubmit()
の動作に関する future.v3_relativeSplatPath
future フラグの動作については、useResolvedPath
ドキュメントの スプラットパス セクションを参照してください。
追加リソース
ディスカッション
関連 API