Ts2307: Cannot Find Module 'Class-Validator'

Ts2307: Cannot Find Module 'Class-Validator'

I'm attempting to use the class-validator module in a typescript project. However when I compile typescript issues the following warning:

src/main/ts/domain/Order.ts(1,48): error TS2307: Cannot find module 'class-validator'.

The line it is complaining about looks like this:

  import { IsInt, IsNotEmpty, IsDate, Min } from "class-validator";

I have gulp setup like this:

    var gulp = require('gulp');
    var ts = require('gulp-typescript');
    var tsProject = ts.createProject("tsconfig.json");

    gulp.task('default', function() {
      return tsProject.src()
        .pipe(tsProject())
        .js.pipe(gulp.dest("target/main/js"));
    });

And my tsconfig.json looks like this:

    {
        "files": [
            "src/main/ts/**/*.ts"
        ],
        "compilerOptions": {
            "experimentalDecorators": true,
            "noImplicitAny": true,
            "target": "es6"
        }
    }

Thoughts?

4 Answers

Set "moduleResolution": "node" in your tsconfig.json:

{
  "compilerOptions": {
    "experimentalDecorators": true,
    "moduleResolution": "node",
    "noImplicitAny": true,
    "target": "es6"
  }
}

You can find more info on how TypeScript resolves your imported modules here:

This worked for me: yarn add graphql class-validator type-graphql

Source:

1

You need to install typescript types for validator in addition to installing class-validator.

That is npm install @types/validator

You need ti install class-validator dependency , use this commond:

npm install class-validator

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

David Miller
Author

David Miller

David Miller brings 15 years of experience in global economics, personal finance strategy, and market dynamics. He specializes in turning complex economic trends into actionable insights for everyday readers.