您唯一需要的tsconfigð
#typescript #node #express #nestjs

tsconfig用于配置打字稿在项目中的行为方式,让我们看看哪种是配置它的最佳方法。

这是您可以将其复制并粘贴到项目的配置,向下滚动以获取有关每种配置的说明。

{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "outDir": "./dist",
    "rootDir": "./src",
    "strict": true,
    "noImplicitAny": true,
    "strictNullChecks": true,
    "strictFunctionTypes": true,
    "noImplicitThis": true,
    "noUnusedLocals": true,
    "noUnusedParameters": true,
    "noImplicitReturns": true,
    "esModuleInterop": true,
    "skipLibCheck": true,
    "forceConsistentCasingInFileNames": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true
  },
  "include": ["src/**/*"],
  "exclude": ["**/*.test.ts"]
}

让我们深入研究每个配置

  • dist是您的转移代码进入的位置,在您的CICD中,您只需要将dist文件夹与package.json一起将dist文件夹复制到服务器即可安装prod依赖关系。
"outDir": "./dist"
  • src是您的TS代码的根文件夹
"rootDir": "./src"
  • 以下是一些严格的检查,从长远来看将为您提供帮助
"strict": true,
"noImplicitAny": true,
"strictNullChecks": true,
"strictFunctionTypes": true,
"noImplicitThis": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noImplicitReturns": true,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true
  • 装饰器,打字稿的最佳功能之一。大多数很棒的框架都使用此框架,例如Nestjs,Typeorm,ClassValidator,RoutingControllers等。使用以下配置启用装饰器
"emitDecoratorMetadata": true,
"experimentalDecorators": true
  • 包括SRC目录下的文件
"include": ["src/**/*"]
  • 排除测试,为您的测试文件模式提供正格。测试是在转移前作为TS文件运行的,我们在蒸腾后不需要测试。
"exclude": ["**/*.test.ts"]

那就是所有的人,快乐黑客ð


ð嘿,如果您发现这篇文章有所帮助,并且想了解我最新的技术见解,技巧和技巧,请随时在Twitter上关注我。让我们一起建立并成长! ð