importSchema GraphQL 错误:ENOENT:没有这样的文件或目录,打开“./schema.graphql”
Posted
技术标签:
【中文标题】importSchema GraphQL 错误:ENOENT:没有这样的文件或目录,打开“./schema.graphql”【英文标题】:importSchema GraphQL Error: ENOENT: no such file or directory, open './schema.graphql' 【发布时间】:2020-04-20 17:45:51 【问题描述】:我尝试使用以下代码导入 graphql 架构:
import importSchema from 'graphql-import'
const typeDefs = importSchema(`./typeDefs/schema.graphql`)
我遇到了一个错误:
fs.js:114
throw err;
^
Error: ENOENT: no such file or directory, open './schema.graphql'
at Object.openSync (fs.js:443:3)
at Object.readFileSync (fs.js:343:35)
at read (C:\Data\Dev\Yunazon\191121-serv\node_modules\graphql-import\src\index.ts:31:15)
at importSchema (C:\Data\Dev\Yunazon\191121-serv\node_modules\graphql-import\src\index.ts:87:15)
at Object.<anonymous> (C:\Data\Dev\Yunazon\191121-serv\src\graphQL/apolloServer.js:10:18)
什么是问题?
【问题讨论】:
【参考方案1】:经过一些研究并感谢@enBonnet(github 社区)的发现,我找到了更改路径参数的解决方案。由于某些原因,GraphQL 工具需要绝对路径而不是相对路径:
import importSchema from 'graphql-import'
const typeDefs = importSchema(`$__dirname/typeDefs/schema.graphql`)
【讨论】:
以上是关于importSchema GraphQL 错误:ENOENT:没有这样的文件或目录,打开“./schema.graphql”的主要内容,如果未能解决你的问题,请参考以下文章
GraphQL 错误:预期类型为 Int。 Int 不能表示非整数值
上传文件时从 graphql 获取臭名昭著的 400 错误,调试显示在 graphql-upload 中填充的数据
GraphQL - 联合类型给出错误 no class could be found for that type name