インデックスクエリパラメータ
フォームを送信すると、アプリの URL にワイルドな ?index
が表示されることがあります。
ネストされたルートのため、ルート階層内の複数のルートが URL に一致する可能性があります。ナビゲーションでは、一致するすべてのルートの loader
が呼び出されて UI が構築されますが、form
を送信すると、1 つのアクションのみが呼び出されます。
インデックスルートは親ルートと同じ URL を共有するため、?index
パラメータを使用すると、2 つを区別できます。
たとえば、次のフォームについて考えてみましょう。
?index
パラメータはインデックスルートに送信され、action
にインデックスパラメータがない場合は親ルートに送信されます。
<Form>
がインデックスルートで action
なしでレンダリングされると、?index
パラメータが自動的に追加され、フォームがインデックスルートに投稿されます。次のフォームは、送信されると /projects?index
に投稿されます。これは、プロジェクトインデックスルートのコンテキストでレンダリングされるためです。
コードを ProjectsLayout
ルートに移動すると、代わりに /projects
に投稿されます。
これは <Form>
およびそのすべての仲間にも適用されます。