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

Next.js项目中如何隐藏pages目录下的指定路由?

可以实现,以下是几种实用的操作方法:
  • 下划线前缀命名
    Next.js 默认会忽略 pages 目录下以下划线(_)开头的文件和子文件夹,不会为它们生成对应的路由。这类文件可当作内部模块,在其他页面组件中导入使用。比如你创建pages/_internal-tool.js,部署后不会出现/internal-tool路由,完全不影响你在其他页面里import { someFunc } from './_internal-tool'调用里面的逻辑。

  • 通过 next.config.js 配置排除路由(Next.js 12.2+)
    在项目根目录的next.config.js中,利用实验性配置项experimental.excludeRoutes指定需要排除的路由路径(注意填的是路由路径,不是文件名),还支持通配符匹配批量排除。示例配置如下:

    module.exports = {
      experimental: {
        excludeRoutes: ['/admin', '/internal/*']
      }
    }
    

    注意:这个特性目前属于实验性,后续版本可能有变动,使用前确认你当前的Next.js版本是否支持。

  • 移出pages目录(最稳妥方案)
    如果某些文件只是工具函数、通用组件或者内部业务逻辑,根本没必要放在pages目录里。直接把它们移到项目根目录下的utils、components这类自定义目录中,既不会生成多余路由,还能让项目结构更清晰。比如创建src/components/BaseLayout.js,在pages的页面组件里通过import BaseLayout from '../components/BaseLayout'导入使用就行。

内容的提问来源于stack exchange,提问作者Andrés F Ariza Calderón

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 09:55:22