Skip to content

TS 配置文件

使用了配置文件后, 在命令行中使用tsc命令进行编译 ts 文件时, 不能在跟上文件名,否则会忽略配置文件

1. 生成方式

  • 手动创建
  • 通过命令自动创建 tsc --init

2. 一些基础配置

json
{
  "compilerOptions": {
    // 编译选项
    "target": "es2016", // 配置要编译成的目标代码的版本标准
    "module": "commonjs", // 配置要编译成的目标使用的模块化标准
    "lib": ["es2016"], // 修改ts的默认全局环境为 es2016, 表示tes7里面的一切全局内容可以在ts中使用, 若不配置,ts的默认环境为浏览器环境
    "outDir": "./dist" // 配置编辑结果的输出目录, 默认会输出到当前源文件所在目录
  },
  "include": [
    // 告诉ts,那里的ts文件需要进行编译,默认为所有src目录下的文件
    "./src"
  ],
  "files": ["./src/index.ts"] // 类似指定入口文件,ts只会编译这个文件以及其依赖的文件
}
  • compilerOptions.lib:用于修改当前项目中 ts 的全局环境,默认情况下 ts 为浏览器环境,若值为["es2016"],那么就已经修改了默认值,若要使用 nodejs,则需要安装@types/node来支持 node 的一切全局 API

使用第三方库简化流程

  • ts-node:
    • 将 ts 代码在内存中完成编译,同时完成运行编译后的代码,默认不会输出编译后的文件或目录
    • 但是不能 watch 代码变化后自动编译
    • nodemon:用于检测文件变化,解决 ts-node 无法检测代码变更的问题
bash
nodemon --wathc src -e ts --exec ts-node src/index.ts

nodemon 参数解析

  • -e ts:仅监控扩展名为 ts 的文件
  • --exec src/index.ts:要执行的文件
  • --watch src:仅监控 src 文件夹的变化