You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Next.js App Router路由疑问:路径层级与页面命名规则问题

问题原因与解决方案

1. 访问路径为url/pages/test的原因

Next.js App Router(即你选择的/app目录模式)的路由规则是文件夹结构直接映射URL路径:

  • 你在/app下创建了/pages/test文件夹,内部的page.tsx会被解析为/pages/test路径,完全对应你创建的文件夹层级。
  • 若要实现url/test的访问路径,需直接在/app目录下创建test文件夹,再在其中放置page.tsx,即目录结构为:
    app/
      test/
        page.tsx
    

2. 无法用index替代page作为索引文件名的原因

App Router与传统的Pages Router(旧版/pages目录模式)的路由入口规则完全不同:

  • App Router强制要求每个路由段的入口文件名为page.tsx,不识别index.tsx作为路由入口。
  • 只有Pages Router才会将index.tsx解析为当前文件夹的默认路由,这是两种路由系统的核心差异。

3. 你尝试的两种方法无效的原因

  • 将/pages移至/app外:此时/pages会被识别为Pages Router的目录,但你的项目默认启用的是App Router且优先级更高;同时Pages Router的入口文件规则是index.tsx或直接命名为路由名的文件(如test.tsx对应/test),你如果还是用page.tsx的话,Pages Router也不会识别。
  • 直接在/app下创建test.tsx:App Router要求路由必须以文件夹+page.tsx的形式存在,直接在/app下创建单个文件不会被解析为路由,必须包裹在对应名称的文件夹中。

内容的提问来源于stack exchange,提问作者blaize

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 19:04:55