Typescript错误不会在npm build上显示,Next.js

ckx4rj1h  于 11个月前  发布在  TypeScript
关注(0)|答案(1)|浏览(124)

我正在尝试将Next JS从JavaScript转换为typescript。我犯了一些错误,看看类型检查是否有效。

export class Knot {
  position: Vector2;
  locked: number;
  deletable: boolean;
  isLast: boolean;
  isActive: boolean;
  handles: { in: Vector2, out: Vector2 };

  constructor(position: Vector2, locked: boolean, isLast: boolean, isActive: boolean = false, deletable: boolean = true) {
    this.position = position
    this.locked = locked //0 = not locked, 1 = y is locked, 2 = x is locked, 3 = z is locked
    this.deletable = deletable
    this.isLast = isLast
    this.isActive = isActive
  }
}

字符串
如果你看一下locked变量。我给一个数字赋值一个布尔值。它在我的编辑器中显示错误,但是当我运行npm run build时它不会抛出任何错误
我没有这个ignoreBuildErrors: true设置设置在任何地方。我已经搜索了整个项目。
我正在和turborepo合作。不知道这是否有什么不同。
这是我的tsconfig

{
  "$schema": "https://json.schemastore.org/tsconfig",
  "display": "Next.js",
  "extends": "./base.json",
  "compilerOptions": {
    "target": "es5",
    "noImplicitAny": false,
    "lib": ["dom", "dom.iterable", "esnext"],
    "allowJs": true,
    "skipLibCheck": true,
    "strictNullChecks": false,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "noEmit": true,
    "incremental": true,
    "esModuleInterop": true,
    "module": "esnext",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "jsx": "preserve"
  },
  "include": ["src", "next-env.d.ts"],
  "exclude": ["node_modules"]
}

ntjbwcob

ntjbwcob1#

尝试运行npx tsc --noEmit。此命令将检查您的TypeScript文件是否存在类型错误,而不会发出任何输出文件。如果代码中存在类型错误,此命令应该可以帮助您找到它们。

相关问题