如何设置Next.js项目目录结构

2,613 阅读1分钟

Next.js非常棒,给我们的React应用提供了一大套内置功能,这些功能在Web应用中是必不可少的。

它为我们的项目文件提供了一点结构。

所有可见的页面都在/pages 文件夹下。API路由在/pages/api 文件夹下。公开可见的文件在/public

这基本上就是全部。剩下的都是我们自己的事。

我通常的做法是这样的。

所有页面需要的React组件都在一个/components 文件夹中。

我通常有一个/components/Common 文件夹,然后我重新创建页面结构。

  • /components/Common
  • /components/Home
  • /components/Profile

...等等。

然后我有一个lib 文件夹,其中包含React组件或API路由所使用的所有实用程序。它可能是数据获取、库的初始化、Prisma设置、数据库访问、SWR的获取器、easy-peasy 存储......基本上任何可以在任何地方重复使用的东西,但它不是一个组件。

我还确保我可以像这样包括它们。

import comp from components/Common/comp
import x from lib/x

使用jsconfig.json 中的这个小设置。

{
  "compilerOptions": {
    "baseUrl": "."
  }
}

我提到了Prisma,我经常使用它。这就需要有自己的/prisma 文件夹来存放模式和迁移,如果需要的话,可能还需要一个SQLite数据库。

如果网站有内容,例如以markdown的形式,我将添加一个/content

对于中间件(有时它是有用的),/middleware ,但这是相当罕见的。

这对几乎所有你需要的东西来说都会很好用。

#ready