web-dev-qa-db-ja.com

警告:親tsconfig.jsonが見つかりません

警告を修正したいと思います:

警告:親tsconfig.jsonが見つかりません

typeScript ErrorsIntelliJ IDEA 2016.3のタブ。 TypeScriptコードはsrcディレクトリにあり、libフォルダーをsrcに追加しなくても、TypeScript出力はlibに期待どおりに送信されます。

他のプロジェクトでlibフォルダーを使用していますが、期待どおりに機能しているようです。したがって、これは大きな問題ではないようですが、TSLintで時々.tsxファイルがJSXでなく、リントが正しくないように見えて、時々それを通常のように扱うという問題があります.tsファイル。最終的にはそれを理解するようです。 TSLint設定がtsconfig.jsonを使用するように構成されているため、これが関連しているかどうか疑問に思っています。

以前に.jsトランスパイルされたファイルがsrcフォルダー内の.tsファイルの横に表示されることもありましたが、最近tsconfig.jsonを変更したためです。

次のようなファイル:

tsconfig.json
src/index.ts
lib/index.js
lib/index.d.ts

TypeScript 2.1.4にアップグレードしましたが、2.0.10で表示されていました。

私のtsconfig.jsonファイル:

{
  "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
  }
}

問題は使用されているTypeScriptバージョン(2.1.x)に固有です。 2016.3。2 EAP で修正されています

注:この回答は、IDE(WebStorm、PHPStorm、IDEA)バージョン2016.3に固有の問題を参照しています。TypeScript2.1.xではうまく機能せず、誤った警告が表示されます。同様の場合メッセージ(Cannot find parent tsconfig.json)他のIDE=バージョンでは、設定に問題がある可能性があります。現在編集中の場合、このようなメッセージが表示されます.tsファイルが含まれていないtsconfig.json

8
lena

以下の画像のように、ファイルtsconfig.jsonincludeセクションを設定してみてください。
(私のプロジェクトのルートフォルダはfrontendであり、includeセクションはfrontend/**/*です。

もちろん、プロジェクトのルートフォルダの名前をfrontendに変更する必要はありません。
名前のみが一致する必要があります。

tsconfig.jsonを保存して.tsまたは.tsxファイルを開いた直後に有効になります。再起動しない場合は、WebStorm/IDEAを再起動してください。

そしてこのソリューションをテストする前にerrorコンソールをクリアすることを忘れないでください。以前のメッセージをキャッシュする可能性があります。

P/S:私はWebStorm 2016.3.1を使用しています。

enter image description here


webpackts-loaderと一緒に使用している場合、上記のソリューションではビルドが失敗します。その場合は、代わりにこのアプローチを検討してください。

enter image description here

19

上記の解決策はどれもうまくいきませんでしたが、うまくいったtsconfigの変更に遭遇しました。 IDEはtscとは異なるルールを使用しているようです。

これは機能しませんでした

"include": ["./typings", "./src", "./test"],

これでうまくいきました

"include": ["./typings/**/*", "./src/**/*", "./test/**/*"],
4
kross

「バージョン番号」をtsconfig.jsonファイルに設定してみてください。

{
    "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
    }
}
1
Peter Panek