所以我的问题可能有点愚蠢,因为我不是在谈论 NPM 包。
目前,我的团队在 Next 13 上开发了后端(使用应用程序路由版本)。 到目前为止一切都很好,所以我们开始在前面工作。 我们的后端定向到 /admin,前端定向到应用程序文件夹中的 /(website) 文件夹。 两者都通过 Prisma 连接到数据库。
查看 Next JS 文档,多区域的实现应该可以帮助我们实现让两个独立的应用程序共享同一个数据库的目标。 真正的问题是我们如何在您未来的所有网站上实现 /admin 文件夹,因为我们知道我们想要:
目前两个应用程序都位于 /app 文件夹中,这没有问题,但我们希望防止将整个内容推入我们的存储库中。 前端和后端应该是两个独立的实体。
提前谢谢您,
你的问题很有趣。所以我也想要这样的东西,我研究并找到了这个解决方案:
确实,Next.js 13 的多区域功能可以帮助您实现拥有两个独立应用程序(前端和后端)同时共享同一数据库的目标。但是,了解如何构建项目和依赖项以满足您的要求非常重要。
这是我认为应该有效的方法:
/project-root
/admin
/pages
/components
...
/website
/pages
/components
...
// /project-root/shared/database.js
import { PrismaClient } from '@prisma/client';
const prisma = new PrismaClient();
export { prisma };
.gitignore
文件来做到这一点:/project-root/admin/node_modules
/project-root/website/node_modules
# Assuming admin is a separate Git repository
cd admin
git pull origin main