Parsing error: Cannot read file '...tsconfig\file' ํด๊ฒฐ ๋ฐฉ๋ฒ
Parsing error: Cannot Read File ...tsconfig.json
๋ชจ๋ ํ์ผ ์๋จ์ ๋ฑ์ฅํ ํ์ผ ์๋ฌ..
๋ฐ๋ผ์ eslint์์์ ๋ฐ์ํ ์๋ฌ์ด๋ฉฐ, ํด๋น ํ์ผ์ ๊ฒฝ๋ก๋ฅผ ์ถ๊ฐํด์ค์ผ๋ก์จ ์ ๋๋ก ๋ ํ์ผ ๊ฒฝ๋ก๋ฅผ ์ฐพ๋๋ก ํด์ผ ํ๋ค.
๐ ํด๊ฒฐ ๋ฐฉ๋ฒ 1
ํด๊ฒฐ๋ฐฉ๋ฒ
.eslintrc.js ํ์ผ์์ ์๋ ๋ด์ฉ์ ์ถ๊ฐํด ์ฃผ๋ฉด ๋๋ค.
overrides: [
{
files: ['*.ts', '*.tsx'],
rules: {
'no-unused-vars': 'off',
'@typescript-eslint/no-unused-vars': ['error'],
'@typescript-eslint/no-shadow': ['error'],
'no-shadow': 'off',
'no-undef': 'off',
},
//์ด ๋ถ๋ถ์ ์ถ๊ฐ์ฃผ์!
parserOptions: {
project: ['tsconfig.json'],
createDefaultProgram: true,
},
},
],
๊ตฌ๊ธ๋ง์ผ๋ก ๋๋์ด ํด๊ฒฐ๋์๋ค.. ๊ตฌ๊ธ์์ด ๋ชป ์ด์
++ ๊ทผ๋ฐ ๋ ๊ณ์ ์ด ์ํฉ์ด ๊ณ์ ๋์๋ค ใ
.ใ
๊ทธ๋์ ์ฐพ์๋ณด๋
extends์ @typescript-eslint/parser๋ฅผ ๋ฃ์ผ๋ ํด๊ฒฐ์ด ๋๋ค๊ณ ...
๊ทธ๋์ ๊ฒฐ๋ก ์ (๋ด ํ์ผ ์์ ํ๊ฒฝ์ผ ๋ฟ)
{
"root": true,
"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/recommended",
"plugin:@typescript-eslint/parser" // ์ฌ๊ธฐ
],
"parser": "@typescript-eslint/parser",
"parserOptions": { // ์ฌ๊ธฐ
"project": ["tsconfig.json"],
"createDefaultProgram": true
},
"plugins": ["@typescript-eslint"],
"rules": {
"@typescript-eslint/strict-boolean-expressions": [
2,
{
"allowString": false,
"allowNumber": false
}
]
},
"ignorePatterns": ["src/**/*.test.ts", "src/frontend/generated/*"]
}
๐ก ํด๊ฒฐ ๋ฐฉ๋ฒ 2
์ด๊ฑธ๋ก ํด๊ฒฐ ๋ด!!!!!!!
- ์์ธ
.eslintrc.js ์ parserOptions ๋ด project ๋ค์ ํ์ฌ ์์ ๊ฒฝ๋ก์ ๋ฐ๋ผ ์๋์ ์ผ๋ก ๊ตฌ์ฑ๋จ.
ํ๋ก์ ํธ ๊ฒฝ๋ก๊ฐ ์๋์ ๊ฐ์ด ๋์ด ์๊ณ 00.dev ํด๋๋ฅผ root ์ผ๋ก ํ์ฌ workspace ๋ฅผ ์ด๊ฒ ๋ ๊ฒฝ์ฐ, ./tsconfig.json ์ ๊ณง 00.dev/tsconfig.json ์ด ๋๋ค. ํด๋น ๊ฒฝ๋ก์๋ tsconfig.json ํ์ผ์ด ์๊ธฐ ๋๋ฌธ์ parsing error ๊ฐ ๋จ๊ฒ ๋๋ค.
parserOptions ๋ด์ tsconfigRootDir ํ๋๊ทธ๋ฅผ ์ถ๊ฐํ์ฌ tsconfig.json ํ์ผ์ ์ ๋๊ฒฝ๋ก์์ ์ฐพ๋๋ก ํด์ค๋ค.
module.exports = {
parserOptions: {
project: './tsconfig.json',
sourceType: 'module',
tsconfigRootDir: __dirname,
}
}
๊ทธ๋ฆฌ๊ณ
tsconfig.eslint.json ์ ์๋ ์ฝ๋ ์ฝ์
{
"extends": "./tsconfig.json",
"include": [
// ๐๏ธ add all the directories and files
// that you want to lint here
"src",
"tests",
// add all files in which you see
// the "parserOptions.project" error
".eslintrc.js"
]
}