{ "compilerOptions": { /* 基础配置 */ "target": "ES2020", // 编译目标(支持现代浏览器) "lib": ["DOM", "DOM.Iterable", "ES2020"], // 类型库 "jsx": "react-jsx", // JSX 编译模式(React 17+ 新 JSX 转换) "module": "ESNext", // 模块系统 "moduleResolution": "node", // 模块解析策略 /* 类型检查 - 推荐模式(渐进式严格化)*/ "strict": false, // 关闭全部严格检查(初期) "noImplicitAny": true, // 禁止隐式 any(推荐启用) "strictNullChecks": false, // 暂不启用空值检查(后续开启) "strictFunctionTypes": false, // 暂不启用函数类型严格检查 "strictBindCallApply": false, // 暂不启用 bind/call/apply 严格检查 "strictPropertyInitialization": false, // 暂不启用属性初始化检查 "noImplicitThis": true, // 禁止隐式 this "alwaysStrict": true, // 总是以严格模式解析 /* 额外检查 */ "noUnusedLocals": false, // 初期不检查未使用的局部变量 "noUnusedParameters": false, // 初期不检查未使用的参数 "noImplicitReturns": false, // 初期不强制所有路径都返回值 "noFallthroughCasesInSwitch": true, // 检查 switch 语句穿透 /* 互操作性 - 支持 JS/TS 共存 */ "allowJs": true, // 允许编译 JS 文件 "checkJs": false, // 不检查 JS 文件(避免大量错误) "isolatedModules": true, // 确保每个文件都可以独立编译 "esModuleInterop": true, // ES 模块互操作性 "allowSyntheticDefaultImports": true, // 允许默认导入 "skipLibCheck": true, // 跳过库文件类型检查(加快编译) "forceConsistentCasingInFileNames": true, // 强制文件名大小写一致 "resolveJsonModule": true, // 支持导入 JSON 文件 /* 输出配置 */ "noEmit": true, // 不生成输出文件(由 Babel/Webpack 处理) "declaration": false, // 不生成类型声明文件 "sourceMap": false, // 不生成 source map(由 Webpack 处理) /* 路径别名 - 与 craco.config.js 保持一致 */ "baseUrl": ".", "paths": { "@/*": ["src/*"], "@assets/*": ["src/assets/*"], "@components/*": ["src/components/*"], "@constants/*": ["src/constants/*"], "@contexts/*": ["src/contexts/*"], "@data/*": ["src/data/*"], "@hooks/*": ["src/hooks/*"], "@layouts/*": ["src/layouts/*"], "@lib/*": ["src/lib/*"], "@mocks/*": ["src/mocks/*"], "@providers/*": ["src/providers/*"], "@routes/*": ["src/routes/*"], "@services/*": ["src/services/*"], "@store/*": ["src/store/*"], "@styles/*": ["src/styles/*"], "@theme/*": ["src/theme/*"], "@utils/*": ["src/utils/*"], "@variables/*": ["src/variables/*"], "@views/*": ["src/views/*"] } }, /* 包含/排除文件 */ "include": [ "src/**/*", // 包含 src 目录下所有 .ts, .tsx, .js, .jsx 文件 "src/**/*.json" // 包含 JSON 文件 ], "exclude": [ "node_modules", // 排除依赖 "build", // 排除构建输出 "dist", // 排除打包输出 "scripts", // 排除脚本 "**/*.spec.ts", // 排除测试文件(可选) "**/*.test.ts", "**/*.spec.tsx", "**/*.test.tsx" ] }