現在はTypeScriptはTSLintではなくESLintを使用するのが主流

TSLintではなくESLint

2019年頃まではTypeScriptを使用する際はコードの厳密なチェックを行う静的解析ツールにTSLintを使用していたが現在はTypeScriptでもESLintを使用することが主流になっている。

しかし、少し古い書籍やネット上の記事ではnpm install tslintでTSLintをインストールするよう書かれているものが多いので注意が必要。

npmコマンドでtslintをインストールしようとすると以下のような警告が表示される。

npm WARN deprecated tslint@6.1.3: TSLint has been deprecated in favor of ESLint. Please see https://github.com/palantir/tslint/issues/4534 for more information. 

TSLintではなくESLintを使うには

TSLintではなくESLintインストールしてTypeScriptを使用するには以下のコマンドを実行する。

npm i -D typescript eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser

インストールされたらadd.tsで以下のようなコードを作成してnpx tsc add.tsを実行すればadd.jsを生成できる。

const sum = (a: number, b: number): number => {
  return a + b
}
console.log(sum(1, 2))
var sum = function (a, b) {
    return a + b;
};
console.log(sum(1, 2));

もしも:numberではなく:stringになっている状態でnpx tsc add.tsを実行するとエラーとなる。

npx tsc add.ts
add.ts:2:3 - error TS2322: Type 'string' is not assignable to type 'number'.

2   return a + b

ESLintのルールを追加する場合はeslintrc.jsonを作成してextendsでESLintの推奨スールを追加して、ほかに必要なルールがあればrulesに追記する。

{
  "extends": "eslint:recommended",
  "rules": {

  }
}