Javascript 无法生成Prisma客户端,outputDir.endsWith不是函数
我正在使用Next.js、Prisma和Nexus(Nexus插件Prisma),并且一直试图生成一个Prisma客户端,但都没有用。每当我运行Javascript 无法生成Prisma客户端,outputDir.endsWith不是函数,javascript,typescript,nexus,prisma,Javascript,Typescript,Nexus,Prisma,我正在使用Next.js、Prisma和Nexus(Nexus插件Prisma),并且一直试图生成一个Prisma客户端,但都没有用。每当我运行npx prisma generate时,都会出现以下错误: TypeError: outputDir.endsWith is not a function at getDotPrismaDir (...) at generateClient (...) 这些是我的依赖项: "dependencies": {
npx prisma generate
时,都会出现以下错误:
TypeError: outputDir.endsWith is not a function
at getDotPrismaDir (...)
at generateClient (...)
这些是我的依赖项:
"dependencies": {
"@prisma/client": "^2.19.0",
"apollo-server-micro": "^2.22.2",
"graphql": "^15.5.0",
"next": "10.1.3",
"nexus": "^1.0.0",
"nexus-plugin-prisma": "^0.33.0",
"react": "17.0.2",
"react-dom": "17.0.2"
},
"devDependencies": {
"@types/react": "^17.0.3",
"prisma": "^2.20.1",
"typescript": "^4.2.3"
}
}
我一直按照Prisma CLI的建议执行以下步骤(到步骤3):
这是怎么回事?将
@prisma/client
和prisma
更新到最新版本,即2.20.1应该可以解决这个问题。发现prisma
的版本需要与nexus插件prisma
提供的@prisma/client
的版本相同。将prisma
更改为2.19.x
并生成客户端工作正常
注意:您也不需要单独安装
@prisma/client
,因为这是随插件提供的。是的,版本不匹配是瓶颈,原来我必须降级prisma
才能与nexus插件prisma
兼容!您似乎正在使用较旧版本的nexus插件prisma
@prisma/client
在较新版本中不再捆绑销售。@Ryan我使用的是版本0.33.0
,这不是几天前才发布的吗?
Next steps:
1. Set the DATABASE_URL in the .env file to point to your existing database. If your database has no tables yet, read https://pris.ly/d/getting-started
2. Set the provider of the datasource block in schema.prisma to match your database: postgresql, mysql or sqlite.
3. Run prisma db pull to turn your database schema into a Prisma data model.
4. Run prisma generate to install Prisma Client. You can then start querying your database.