NextJS项目结构最佳实践:非pages代码应放/src目录还是根目录
Next.js 项目目录结构最佳实践说明
两种目录组织方式都是 Next.js 官方原生支持的合法写法,不存在语法层面的错误,业内选择的核心判断标准是项目规模和协作场景:
- 如果你做的是小型项目、临时原型或单页小工具,完全可以直接把
components、utils、hooks这类业务目录放在项目根目录。这种写法层级浅、查找文件效率高,适合单人开发、迭代周期短的场景。 - 如果你做的是中大型项目、需要多人长期协作维护的项目,更推荐遵循业内通用的最佳实践,把除
pages(App Router模式下是app)目录之外的所有业务代码都放在/src目录下,优势非常明显:- 项目根目录更整洁,只会保留
next.config.js、.env、package.json这类公共配置文件,和业务代码完全隔离,找配置和找业务代码的逻辑互不干扰 - 便于统一配置路径别名,后续调整代码结构时的改动范围更小
- 和 Create React App 等其他 React 生态项目的结构习惯对齐,新加入的团队成员上手成本更低
- 项目根目录更整洁,只会保留
目前行业内的普遍共识是,只要项目预计迭代周期超过3个月、参与开发人数大于等于2人,优先选择/src目录的结构;如果是临时Demo、个人小工具类项目,直接把目录放在根目录完全可行。
内容的提问来源于stack exchange,提问作者horaczech
相关产品推荐
相关产品推荐

