-
Notifications
You must be signed in to change notification settings - Fork 0
/
tsconfig.json
38 lines (32 loc) · 2 KB
/
tsconfig.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
{
"compilerOptions": {
"target": "ESNext", // 将代码编译为ES11版本的 JS
"useDefineForClassFields": true, // TIPS:从 Vite v2.5.0 开始,如果 TypeScript 的 target 是 ESNext 或 ES2022 及更新版本,此选项默认值则为 true。这与 tsc v4.3.2 及以后版本的行为 一致。这也是标准的 ECMAScript 的运行时行为。
"module": "ESNext", //使用 ES Module 格式打包编译后的文件
"lib": ["ESNext", "DOM", "DOM.Iterable"], // 引入 ES11 最新特性和 DOM 接口的类型定义
"skipLibCheck": true, // 跳过对 .d.ts 文件的类型检查
"allowSyntheticDefaultImports": true,
/* Bundler mode */
"moduleResolution": "bundler", // node|bundler
"allowImportingTsExtensions": true, //
"resolveJsonModule": true, // 允许引入 JSON 文件
"isolatedModules": true, // TIPS:隔离的模块 应该设置为 true
"noEmit": true, // 不输出文件,即编译后不会生成任何js文件
"jsx": "preserve", // 保留原始的 JSX 代码,不进行编译
"jsxImportSource": "vue",
/* Linting */
"strict": true, // 开启所有严格的类型检查
"noUnusedLocals": false, //报告未使用的局部变量的错误
"noUnusedParameters": false, //报告函数中未使用参数的错误
"noFallthroughCasesInSwitch": true, //确保switch语句中的任何非空情况都包含
/* ----------------------------------- 自定义 ---------------------------------- */
"esModuleInterop": true, // 允许使用 import 引入使用 export = 导出的内容
"allowJs": true, //允许使用js
"baseUrl": ".", //查询的基础路径
"paths": { "@/*": ["src/*"], "#/*": ["types/*"] } //路径映射,配合别名使用
},
// Note: 添加全局类型文件 types/**/*.d.ts
// "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue", "types/Global.d.ts"],
"include": ["src/**/*", "src/**/*.vue", "types/*.d.ts", "public", "vite.config.ts"],
"references": [{ "path": "./tsconfig.node.json" }]
}