如何使用 Prisma 动态生成的包部署到 Vercel

How to deploy to Vercel with dynamically generated package from Prisma

我正在使用 Prisma 和 Vercel。 Prisma 动态生成 Prisma 客户端,但 Vercel 缓存旧客户端并且不会重建它,除非我登录 Vercel 并单击“重新部署”,这会强制它重新安装所有软件包。

有什么方法可以强制我每次推送到 GitHub 时只重建这个包,这样 Vercel 就不会使用缓存版本了吗?我注意到如果我更改包版本,它会重建,但这是一个相当大的 hack。有什么方法可以标记它每次都重建吗?

"@prisma/client": "3.8.0" // some special flag to prevent this from getting cached?

您使用什么命令来构建应用程序?

推荐的方法是使用这个:

// package.json scripts section
"vercel-build": "prisma generate && prisma migrate deploy && next build",

它将生成新的 prisma 客户端和定义,应用迁移,然后构建用于生产的应用程序。

More info in the docs as always