Files
tauri-meeting/node_api/tsconfig.json
O昵称重要吗O c59a3c798d refactor(entities): 更新 mikro-orm 配置文件位置和命令参数
- 将 mikro-orm.config.ts 移动到 src 目录下
- 更新 generate-entities 命令的配置文件路径参数
- 移除废弃的 migrate 和 mikro-orm 命令脚本
- 修改 tsconfig.json 中的 include 配置以包含新的配置文件位置
2026-03-14 13:20:00 +08:00

62 lines
2.6 KiB
JSON

{
"compilerOptions": {
// 基础配置
"target": "ESNext", // 编译目标
"module": "ESNext", // 模块系统
"lib": ["ESNext"], // 引用的库
"moduleResolution": "bundler", // 模块解析策略
// 输出配置
"rootDir": "./src", // 源代码根目录
"outDir": "./dist", // 输出目录
"sourceMap": false, // 不生成 source map (生产环境不需要)
"declaration": false, // 不生成 .d.ts 文件 (生产环境不需要)
"removeComments": true, // 移除注释(减小体积)
"newLine": "lf", // 换行符统一为 LF
// 模块解析
"baseUrl": "./", // 基础路径
"paths": {
"@/*": ["src/*"] // 路径别名
},
"esModuleInterop": true, // ESM 互操作性
"allowSyntheticDefaultImports": true, // 允许合成默认导入
"resolveJsonModule": true, // 允许导入 JSON
"forceConsistentCasingInFileNames": true, // 强制文件名大小写一致
// 类型检查 - 严格模式
"strict": true, // 启用所有严格检查
"noImplicitAny": true, // 禁止隐式 any
"strictNullChecks": true, // 严格空值检查
"strictFunctionTypes": true, // 严格函数类型
"strictBindCallApply": true, // 严格 bind/call/apply
"strictPropertyInitialization": true, // 严格属性初始化
"noImplicitThis": true, // 禁止隐式 this
"alwaysStrict": true, // 始终严格模式
// 额外检查 - 放宽以适配现有代码
"noUnusedLocals": false, // 允许未使用的局部变量(与 oxlint 配合)
"noUnusedParameters": false, // 允许未使用的参数(与 oxlint 配合)
"noImplicitReturns": false, // 允许部分代码路径无返回值
"noFallthroughCasesInSwitch": true, // 禁止 switch 穿透
"noUncheckedIndexedAccess": false, // 放宽索引访问检查
"noImplicitOverride": false, // 放宽 override 修饰符要求
"useUnknownInCatchVariables": false, // catch 变量使用 any
// 装饰器支持 (NestJS 需要)
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
// 关闭 verbatimModuleSyntax 以允许 NestJS 依赖注入需要的运行时类型信息
"verbatimModuleSyntax": false,
"skipLibCheck": true, // 跳过库文件类型检查(加快编译)
"isolatedModules": true, // 每个文件作为独立模块
"allowJs": false, // 不允许 JS 文件(纯 TS 项目)
"checkJs": false, // 不检查 JS 文件
"types": ["node", "vite/client"] // 包含 Node.js 和 Vite 类型
},
// 包含和排除
"include": ["src/**/*", "mikro-orm.config.ts"],
"exclude": ["node_modules", "dist", "test", "**/*.spec.ts", "**/*.test.ts", "src/src/**/*"]
}