tsconfig.json 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. {
  2. "compilerOptions": {
  3. // 目标ES版本,设定为最新的ES标准
  4. "target": "esnext",
  5. // 为类的实例字段使用明确的定义(class fields)
  6. "useDefineForClassFields": true,
  7. // 指定模块系统,此处使用ES模块
  8. "module": "esnext",
  9. // 模块解析策略,采用Node.js的解析规则
  10. "moduleResolution": "node",
  11. // 启用所有严格类型检查选项
  12. "strict": true,
  13. // 是否排除内置的类型声明文件,默认false包含
  14. "noLib": false,
  15. // 生成相应的source map文件,便于调试
  16. "sourceMap": true,
  17. // 允许导入JSON模块
  18. "resolveJsonModule": true,
  19. // 允许在导入非ES模块时使用默认导入语法
  20. "esModuleInterop": true,
  21. // 指定项目中要包含的库文件
  22. "lib": ["esnext", "dom"],
  23. // 设置基准目录,相对于tsconfig.json的路径
  24. "baseUrl": ".",
  25. // 包含`.js`文件的类型检查
  26. "allowJs": true,
  27. // 路径别名,简化导入路径
  28. "paths": {
  29. "@/*": ["src/*"]
  30. },
  31. // 引入额外的类型声明文件
  32. "types": [
  33. "vite/client",
  34. "unplugin-icons/types/vue",
  35. "element-plus/global",
  36. "vite-plugin-svg-icons/client"
  37. ],
  38. // 跳过`.d.ts`文件的类型检查,提高编译速度
  39. "skipLibCheck": true,
  40. // 允许在没有默认导出的情况下使用默认导入语法
  41. "allowSyntheticDefaultImports": true,
  42. // 强制文件名大小写一致性
  43. "forceConsistentCasingInFileNames": true,
  44. // JSX编译设置,保留JSX以便在运行时转换
  45. "jsx": "preserve",
  46. // 自定义JSX工厂函数
  47. "jsxFactory": "h",
  48. // 自定义JSX片段工厂函数
  49. "jsxFragmentFactory": "Fragment"
  50. },
  51. // 指定要包含在编译操作中的文件
  52. "include": ["src/**/*.ts", "src/**/*.vue", "src/typings/**/*.d.ts", "vite.config.ts"],
  53. // 排除不希望被编译的文件或目录
  54. "exclude": ["node_modules", "dist"]
  55. }