-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtsconfig.json
60 lines (60 loc) · 2.62 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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
{
// https://nuxt.com/docs/guide/concepts/typescript
"extends": "./.nuxt/tsconfig.json",
"compilerOptions": {
"strict": true,
"ignoreDeprecations": "5.0",
// 默认所有可见的 @types 包会在编译过程中被包含进来。
// 包含什么目录下的类型声明文件
// "typeRoots": [],
// 包含 node_modules/@types 或者 typeRoots 配置项
// 指定的目录里面的哪些库的类型声明文件包
// "types": [],
// TS 代码编译成的 JS 代码的目标版本
"target": "ES2015",
// TS 代码编译成的 JS 代码的使用的模块化标准
"module": "ESNext",
// 允许在项目中使用 js 文件
"allowJs": true,
// 是否生成 TS 代码转换成 JS 代码时的源码映射文件
"sourceMap": true,
// 是否将 class 声明中的字段语义从 [[Set]] 变更到 [[Define]]
"useDefineForClassFields": true,
// 编译过程中需要引入的库
// 可选值参考:https://www.tslang.cn/docs/handbook/compiler-options.html
"lib": ["ES2015", "ESNext", "DOM", "DOM.Iterable"],
// 是否忽略对所有的声明文件( *.d.ts)的类型检查
"skipLibCheck": true,
/* Bundler mode 打包模式配置 */
// 模块解析策略
"moduleResolution": "Node",
// 是否允许导入 TypeScript 文件时省略文件的后缀
"allowImportingTsExtensions": true,
// 是否允许 JSON 文件作为模块导入
"resolveJsonModule": true,
// 是否将每个文件作为单独的模块
"isolatedModules": true,
// 是否不生成 TS 代码编译成 JS 代码的输出文件
"noEmit": true,
// 编译后生成的代码中会保留 JSX 代码,后续代码的使用需要代码转换工具进行转换操作,
// 如 Babel,输出文件会带有 .jsx 扩展名
"jsx": "preserve",
// 指定 jsx 导入源
"jsxImportSource": "vue",
// 当 this 表达式的值为 any 类型的时候,生成一个错误。
"noImplicitThis": true,
// 是否强制代码中使用的模块文件名必须和文件系统中的文件名保持大小写一致
"forceConsistentCasingInFileNames": true,
// 是否允许从没有设置默认导出的模块中默认导入
"allowSyntheticDefaultImports": true,
// 对于没有使用的局部变量是否报错
"noUnusedLocals": true,
// 对于没有使用的参数是否报错
"noUnusedParameters": true,
// 对于 switch 语句中的 case 穿透是否报错
"noFallthroughCasesInSwitch": true,
// 对于在表达式和声明上有隐含的 any 类型时是否报错
"noImplicitAny": true,
"types": ["@pinia/nuxt"]
}
}