I would like to fix the warning:
Warning: Cannot find parent tsconfig.json
in the TypeScript Errors
tab in IntelliJ IDEA 2016.3
. My TypeScript code lives in the src
directory and my TypeScript output is going to lib
as expected without the src
folder being added to lib
.
I consume the lib
folder in other projects and it seems to work as expected. So this doesn't seem to be a big problem, but I occasionally have a problem with TSLint where it sometimes does not seem to pick up a .tsx
file is JSX and lints incorrectly and seems to occasionally treat it as a normal .ts
file. Eventually it seems to figure it out. I am wondering if that is related as my TSLint settings are configured to use tsconfig.json
.
I have also previously had .js
transpiled files turn up next to the .ts
files in the src
folder, but not since I modified my tsconfig.json
recently.
Files as follows:
tsconfig.json
src/index.ts
lib/index.js
lib/index.d.ts
I've upgraded to TypeScript 2.1.4, but was seeing it with 2.0.10.
My tsconfig.json
file:
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"jsx": "react",
"allowJs": false,
"isolatedModules": false,
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"declaration": true,
"noImplicitAny": false,
"noImplicitUseStrict": true,
"noEmitHelpers": false,
"removeComments": true,
"noLib": false,
"sourceMap": true,
"inlineSources": true,
"preserveConstEnums": true,
"allowSyntheticDefaultImports": true,
"suppressImplicitAnyIndexErrors": true,
"rootDir": "./src",
"outDir": "./lib"
},
"include": [
"./src/**/*"
],
"compileOnSave": true,
"atom": {
"rewriteTsconfig": false
}
}
problem is specific to TypeScript version being used (2.1.x); it is fixed in 2016.3. 2 EAP
Note: this answer refers to the issue specific to IDE (WebStorm, PHPStorm, IDEA) version 2016.3: it didn't work well with TypeScript 2.1.x, showing false warnings.
If you see similar message (Cannot find parent tsconfig.json
) in other IDE versions, it is likely a problem with your configuration: such messages are displayed if currently edited .ts
file is not included in any tsconfig.json
.