问题
When I open .vue
file, below error appears in my IntelliJ IDEA:
Parsing error: "parserOptions.project" has been set for @typescript-eslint/parser.
The file does not match your project config: XX\XX\CurrentFile.vue.
The file must be included in at least one of the projects provided.
Of course I will be glad if you teach me the solution, but first what I know what it means and WHY it appears.
I suspect that it is a some kind of bug, or inaccurate error message. Experimentally known what:
- Sometimes it appears, sometimes - no.
- It always appears when update eslint.
- If to run
eslint
from console for some.vue
file, eslint will finish the execution correctly. So seems like it is no eslint bug.
My Eslint config (YAML):
parser: vue-eslint-parser
parserOptions:
parser: "@typescript-eslint/parser"
sourceType: module
project: tsconfig.json
tsconfigRootDir: ./
extraFileExtensions: [ ".vue" ]
env:
es6: true
browser: true
node: true
plugins:
- "@typescript-eslint"
- vue
rules:
// ...
TypeScript settings:
{
"compilerOptions": {
"target": "ES2017",
"module": "CommonJS",
"moduleResolution": "node",
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
"sourceMap": true,
"experimentalDecorators": true,
"skipLibCheck": true,
"strict": true,
"noUnusedParameters": true,
"noImplicitReturns": true,
"importsNotUsedAsValues": "preserve", // Limitation of the transpileOnly mode from ts-loader for .vue files.
"baseUrl": "./",
"paths": {
// ...
}
}
}
回答1:
You need to add your files to the include
array in your tsconfig:
"include": [
"path/to/src/**/*"
]
Source: Github and StackOverflow
来源:https://stackoverflow.com/questions/63879049/what-means-parsing-error-parseroptions-project-has-been-set-for-typescript