I would like to fix the warning:
Warning: Cannot find parent tsconfig.json
in the TypeScript Errors tab in Intell
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.
Try to set the "version number" to your tsconfig.json file.
{
"version": "2.1.4",
"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
}
}
Try setting up include section in file tsconfig.json like in below image.
(Note that my project's root folder is frontend and my include section is frontend/**/*).
Of course you don't need to rename your project's root folder to frontend.
Only the naming should match.
It should take effect immediately after you save the tsconfig.json and open a .ts or .tsx file. If it doesn't try restarting the WebStorm/IDEA.
And don't forget to clear the error console before testing this solution. It might cache the previous messages.
P/S: I'm using WebStorm 2016.3.1.
If you were using webpack together with ts-loader the above solution would cause your builds to fail. If that was the case consider this approach instead.
None of the above solutions worked for me, but I did stumble onto a tsconfig change that did. It seems the IDE is using different rules that tsc.
This did NOT work:
"include": ["./typings", "./src", "./test"],
This did work:
"include": ["./typings/**/*", "./src/**/*", "./test/**/*"],