81 lines
2.8 KiB
JSON
81 lines
2.8 KiB
JSON
{
|
|
"compilerOptions": {
|
|
"module": "ESNext",
|
|
"moduleResolution": "Node",
|
|
"resolveJsonModule": true,
|
|
"useDefineForClassFields": true,
|
|
|
|
// Required in Vue projects
|
|
"jsx": "preserve",
|
|
"jsxImportSource": "vue",
|
|
|
|
// `"noImplicitThis": true` is part of `strict`
|
|
// Added again here in case some users decide to disable `strict`.
|
|
// This enables stricter inference for data properties on `this`.
|
|
"noImplicitThis": true,
|
|
"strict": true,
|
|
// 解决 JSX 元素隐式具有类型 "any",因为不存在接口 "JSX.IntrinsicElements"
|
|
// "noImplicitAny": false,
|
|
|
|
// Required in Vite
|
|
"isolatedModules": true,
|
|
// For `<script setup>`
|
|
// See <https://devblogs.microsoft.com/typescript/announcing-typescript-4-5-beta/#preserve-value-imports>
|
|
// Enforce using `import type` instead of `import` for types
|
|
"verbatimModuleSyntax": true,
|
|
|
|
// A few notes:
|
|
// - Vue 3 supports ES2016+
|
|
// - For Vite, the actual compilation target is determined by the
|
|
// `build.target` option in the Vite config.
|
|
// So don't change the `target` field here. It has to be
|
|
// at least `ES2020` for dynamic `import()`s and `import.meta` to work correctly.
|
|
// - If you are not using Vite, feel free to override the `target` field.
|
|
"target": "ESNext",
|
|
|
|
// Recommended
|
|
"esModuleInterop": true,
|
|
"forceConsistentCasingInFileNames": true,
|
|
// See <https://github.com/vuejs/vue-cli/pull/5688>
|
|
"skipLibCheck": true,
|
|
|
|
"lib": ["esnext", "DOM", "DOM.Iterable"],
|
|
|
|
"baseUrl": ".",
|
|
"paths": {
|
|
"@/*": ["src/*"],
|
|
"@assets/*": ["src/common/assets/*"],
|
|
"@api/*": ["src/common/api/*"],
|
|
"@config/*": ["src/common/config/*"],
|
|
"@directives/*": ["src/common/directives/*"],
|
|
"@enums/*": ["src/common/enums/*"],
|
|
"@http/*": ["src/common/http/*"],
|
|
"@languages/*": ["src/common/languages/*"],
|
|
"@styles/*": ["src/common/styles/*"],
|
|
"@utils/*": ["src/common/utils/*"],
|
|
"@components/*": ["src/components/*"],
|
|
"@composables/*": ["src/composables/*"],
|
|
"@pinia/*": ["src/pinia/*"],
|
|
"@router/*": ["src/router/*"],
|
|
|
|
// 支持提示 index.ts
|
|
"@assets": ["src/common/assets"],
|
|
"@api": ["src/common/api"],
|
|
"@config": ["src/common/config"],
|
|
"@directives": ["src/common/directives"],
|
|
"@enums": ["src/common/enums"],
|
|
"@http": ["src/common/http/*"],
|
|
"@languages": ["src/common/languages"],
|
|
"@styles": ["src/common/styles"],
|
|
"@utils": ["src/common/utils"],
|
|
"@components": ["src/components"],
|
|
"@composables": ["src/composables"],
|
|
"@pinia": ["src/pinia"],
|
|
"@router": ["src/router"]
|
|
},
|
|
"types": ["element-plus/global", "node"]
|
|
},
|
|
"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue", "vite.config.mts"],
|
|
"exclude": ["node_modules", "dist", "**/.*"]
|
|
}
|