我们的项目中有很多配置文件比如说tsconfig.json,就是关于typescript的配置,之前我都是机械性的复制粘贴已经配置好的项目的配置文件,今天我们不谈论别的,就单纯的看一下这个eslint到底是个啥?
假设我们有一个这样的配置文件
npm i typescript 之后,可以使用tsc --init 初始化tsconfig.json
- {
- "compilerOptions": {
- "target": "ESNext",
- "useDefineForClassFields": true,
- "module": "ESNext",
- "moduleResolution": "Node",
- "strict": true,
- "jsx": "preserve",
- "sourceMap": true,
- "resolveJsonModule": true,
- "isolatedModules": true,
- "esModuleInterop": true,
- "lib": ["ESNext", "DOM"],
- "skipLibCheck": true,
- "baseUrl": "",
- "paths": {
- "@/*": ["./src/*"]
- },
- "types": ["vite/client", "vite-plugin-svg-icons/client", "node", "jest"]
- },
- "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue", "__tests__/unit/*.ts"],
- "references": [{ "path": "./tsconfig.node.json" }]
- }
其中target: ESNext,module: ESNext
好多地方有ESNext,那么他到底是啥,以前我一直以为是es6就叫做ESNext,但是其实不然,我们看一下vscode的提示
ESNext不是ES6,但是肯定包含ES6
ESNext
是一个动态的概念,指的是 ECMAScript 的下一个版本。所以我们在配置中写ESNext肯定是包含ES6的语法,因为ES6早就发布了。