繁体   English   中英

type-graphql 找不到模块“类验证器”异常

[英]type-graphql Cannot find module 'class-validator' exception

我正在尝试通过 TypeORM 创建 GQL 突变并使用 SQL 服务器作为数据库。 如果我试图运行突变,它会抛出异常。 分享下面的代码;

索引.ts

(async () => {
    const app = express();
    
        await createConnection();
    
        const apolloServer = new ApolloServer({
            schema: await buildSchema({
                resolvers: [UserRegistrationResolver, HealthResolver],
            }),
            tracing: true,
            context: ({ req, res }) => ({ req, res })
        });
    
        apolloServer.applyMiddleware({ app, cors: false });
    
        app.listen(4000, () => {
            console.log("App is started");
        })
     })();

GQL 类型:

@InputType()
export class UserRegistrationType {

      /*......*/
      @Field()
      Reg_Security_Qus_Ans: string;
     /*......*/

}

实体:

@ObjectType()
@Entity()
export class User_Registration extends BaseEntity {

          /*......*/

    @Field(() => Int)
    @OneToOne(()=> Security_Questions)
    @JoinColumn()
    Reg_Security_Qus_ID: Security_Questions;

         /*......*/
}

突变:

@Resolver()
export class UserRegistrationResolver {
@Mutation(() => User_Registration)
     async createRegistrations(
                @Arg("RegistrationMutation") registrationMutation: UserRegistrationType
          ) {
                console.log("Boom1");
                let oneUser = await User_Registration.insert(registrationMutation);
                return oneUser; 
          }
    
          @Query(() => User_Registration)
          getUsers() {
                console.log("Boom");
                return User_Registration.find();
          } 
}

当我试图执行突变时,出现了一些奇怪的错误,如下所示,要求我输入'class-validator' ,错误看起来像这样,

"message": "Cannot find module 'class-validator'\nRequire stack:\n- 

谁能帮我解决这个问题。 我被这个困住了。 提前致谢。

我很愚蠢,我必须安装

npm i class-validator

这个 package。 就这样

安装class-validator或使用buildSchemavalidate: false选项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM