我正在尝试用@graphql-tools/load-files
加载多个文件,我也尝试过用glob
,但也没有成功。我的文件夹结构是这样的:
/
/.next
/pages
/pages/api
/pages/api/graphql -> there I have an ApolloServer
/server
/types
/types/userTypes.ts
/types/authTypes.ts
我的想法是将所有的graphql类型放在根/ types文件夹中作为不同的文件,并在构建时将它们合并:这是graphql.ts
文件的一部分。
import path from 'path';
import { mergeTypeDefs } from '@graphql-tools/merge';
import { loadFilesSync } from '@graphql-tools/load-files';
const typesArray = loadFilesSync(path.join(__dirname, '../../types/.*'));
console.log(typesArray);
输出为空[]数组。当我尝试在没有NextJs的情况下工作时,我猜NextJs在文件夹结构上做了一些事情,但我不能弄清楚。如果有人能帮上忙那就太好了。提前谢谢。
发布于 2021-03-03 23:11:58
从公认的答案继续-
传递硬编码路径对我不起作用。
相反,只需使用glob模式即可。
loadFilesSync('**/*.gql')
链接的示例使用graphql-let
配置,该配置本质上解析为类似于下面的glob模式。
https://stackoverflow.com/questions/65824594
复制相似问题