NestJS Graphql webpack 生产构建错误

Posted

技术标签:

【中文标题】NestJS Graphql webpack 生产构建错误【英文标题】:NestJS Graphql webpack production build Error 【发布时间】:2020-04-15 00:02:29 【问题描述】:

当我在生产环境中使用 webpack 构建项目时出现架构类型错误。错误:“boostrapping Schema 时出错,必须包含唯一命名的类型,但包含多个名为“s”的类型”

这只发生在生产构建和开发构建工作正常。

这是我的解析器:

@Resolver()
export class UserResolver 
    constructor(private readonly userService: UserService) 

    @Query(() => User)
    public async getAll(@Parent() id): Promise<any> 
        return await this.userService.findUsers(id);
    

    @Mutation(() => ResponseMessage)
    public async registerUser(@Args('registerUser') registerUser: RegisterUserInput): Promise<ResponseMessage> 
        return await this.userService.register(registerUser);
    

    @Mutation(() => User)
    public async updateUser(@Args('updateUser') updateUser: UpdateUserInput): Promise<User> 
        return await this.userService.update(updateUser);
    

删除@Mutation() 并只保留@Query 可以正常编译并构建应用程序。我正在使用 autoSchemaFile 来生成架构文件。

【问题讨论】:

通过在我的 webpack 配置中添加这个来解决问题 optimization: minimize: false, namedModules: true, namedChunks: true, moduleIds: "named" , 没有最小化构建解决了这个问题 【参考方案1】:

Blow 代码将起作用。我不知道为什么 minimize: true 在生产模式下不适用于 NestJS。

optimization: 
    minimize: false,  
,

【讨论】:

我也不知道,但这有帮助!

以上是关于NestJS Graphql webpack 生产构建错误的主要内容,如果未能解决你的问题,请参考以下文章

Nestjs - @nestjs/graphql GraphQLGatewayModule 总是返回错误请求

nestjs 是不是支持 graphql 片段?

NestJS 使用 GraphQL 上传 [关闭]

实现 GraphQLModule 时 GraphQL 的 NestJS 问题

错误:使用 Nestjs + Graphql + Typeorm 时无法确定 GraphQL 输入类型

更新nestjs/graphql后没有通过标头