1. ホーム
  2. javascript

[解決済み] jsconfig.jsonとは?

2022-03-05 03:31:38

質問

同じ質問をインターネットで検索すると、vscodeのウェブサイトやそれを実装しているブログへのリンクばかりがヒットします。

私が知りたいのは jsconfig.json は、特定の vscode または javascript/webpack ?

AWS / Heroku などにアプリケーションをデプロイするとどうなりますか?変更する必要があるのでしょうか?

解決方法は?

これは、エディターの Language Server (LSP) を、プロジェクトフォルダ内のjavascriptの使用状況に応じて変更することができます。

これはVsCodeから始まったように見えますが、LSPを使用しているエディタであれば誰でも jsconfig.json VsCode、SublimeTextなどを含む。

最も一般的な使い方は、インテリセンスでフォルダをインクルード/エクスクルードしたり(現在ではほとんどのエディターがLSPを使用しています)、ソースコード内のエイリアスを特定のフォルダにマッピングすることです。

{
  "compilerOptions": {
    "baseUrl": ".",
    "paths": {
      "$libs": ["src/libs"],
      "$libs/*": ["src/libs/*"],
    }
  },
  "include": ["src/**/*.d.ts", "src/**/*.js", "src/**/*.svelte"],
  "exclude": ["node_modules", "**/node_modules", "dist"]
}

このファイルは、基本的に言語サーバーに指示します。

ベースURL

使用 . の場所をプロジェクトのルート(jsconfig.jsonがある場所)にします。

パス

手段 $libs を指しています。 /src/libs . これは、エディタがLSPに依存してファイルを探す場合に便利です。 go to file が正しい場所に移動します。

含む

は、ファイル検索やコード補完を行う際に、これらの拡張子で終わるすべてのフォルダとファイルを含めることを意味します。

除外する

の中にあるものをすべて除外することを意味します。 node_modulesdist フォルダーに格納されます。例えば、シンボルや変数を検索するときに、コンパイルされたバンドルを検索結果に表示させたくない場合などです。

備考

つまり、以下のように考えることができます。 jsconfig.json と少し似ています。 .gitignore が、エディタの言語サーバー用としてのみ使用されます。

ただし、エイリアスのマッピングにjsconfig.jsonを使用する場合は、モジュールバンドルに追加の設定を行う必要があり、その際に eslint の設定は、eslintを使用している場合です。

例えば、NodeJS-CommonJSの環境では、nodejsに何を伝える必要があります。 $libs があります。いろいろな方法がありますが、最近はほとんど module-alias .

https://www.npmjs.com/package/module-alias