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