cloudflare/vinext

App Router: parallel route slots drop dynamic params (`catchAll`/`[...slug]`)

已关闭

#1,536 创建于 2026年5月22日

 (0 条评论) (0 个反应) (0 位负责人)TypeScript (383 个派生)github user discovery
adapter-api-e2ehelp wanted

仓库指标

星标
 (8,624 个星标)
PR 合并指标
 (平均合并 1天 1小时) (30 天内合并 462 个 PR)

描述

This issue was created by an agent analysing CI failures from the Next.js Deploy Suite (vinext main vs Next.js v16.2.6, 2026-05-22).

Problem

Pages under a parallel slot with a catch-all dynamic segment receive a params object that omits the dynamic key entirely. The matched catchAll: ['sub','folder'] array is dropped both on initial SSR and on client navigations, leaving only the static keys.

Parallel slot's catchAll params key dropped from `params`

Estimated Impact

~2 test failures across the deploy suite.

Affected Test Suites

  • test/e2e/app-dir/parallel-route-navigations/parallel-route-navigations.test.ts (2 failures)

Recommendation

  1. Reproduce first in vinext's own test suite. Add a @slot/[...catchAll]/page.tsx and assert params.catchAll is populated on SSR and after client nav.

  2. Pass dynamic params through the parallel-slot resolver. When matching parallel slots, accumulate dynamic params from the slot path into params rather than only the children path.


Part of #1328.

贡献者指南