【问题标题】:TS2307: Cannot find module 'class-validator'TS2307:找不到模块“类验证器”
【发布时间】:2017-04-30 08:52:41
【问题描述】:

我正在尝试在打字稿项目中使用class-validator 模块。但是,当我编译 typescript 时会发出以下警告:

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

它抱怨的那一行看起来像这样:

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

我有这样的 gulp 设置:

    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"));
    });

我的 tsconfig.json 看起来像这样:

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

想法?

【问题讨论】:

    标签: typescript gulp gulp-typescript


    【解决方案1】:

    在您的tsconfig.json 中设置"moduleResolution": "node"

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

    您可以在此处找到有关 TypeScript 如何解析导入模块的更多信息:https://www.typescriptlang.org/docs/handbook/module-resolution.html#node

    【讨论】:

      【解决方案2】:

      这对我有用:yarn add graphql class-validator type-graphql

      来源:https://github.com/MichalLytek/type-graphql/issues/625#issuecomment-626368051

      【讨论】:

      • 请解释你的代码是做什么的以及它是怎么做的。
      【解决方案3】:

      除了安装类验证器之外,您还需要为验证器安装 typescript 类型。

      那是npm install @types/validator

      【讨论】:

        猜你喜欢
        • 2017-03-09
        • 2017-02-02
        • 2022-11-02
        • 2019-11-29
        • 2017-10-13
        • 2017-09-27
        • 1970-01-01
        • 1970-01-01
        • 2017-09-17
        相关资源
        最近更新 更多