eslint
関連
globals
disable-hogehoge は要らなくて列挙すればよい
/* global {...} */ を書く
.eslintrc に "globals": { ... } を書く
一部のファイルだけ特定のルールを無効にしたい
code:overrides.json
{
"rules": {...},
"overrides": [
{
"rules": {
"no-unused-expressions": "off"
}
},
{
"rules": {
"node/no-unpublished-require": "off"
}
}
]
}
eslint-plugin-compat
ブラウザ互換性に基づいて使えないメソッドなど出してくれる
しかし Array.prototype.find など通常インスタンスメソッドで呼び出すやつは検知されない(静的解析がむつかしい)
eslint-typescript
no-declare
no-unsed-vars
code:.eslintrc
"@typescript-eslint/no-unused-vars": [
"warn",
{
"vars": "local",
"argsIgnorePattern": "^_",
"varsIgnorePattern": "^_"
}
]
0:0 error Parsing error: Cannot read property 'map' of undefined
これが出る時はだいたい TypeScript の更新に @typescript-eslint が追いついてない状態
no-floating-promises
code:rule.json
"@typescript-eslint/no-floating-promises": [
"error",
{
"ignoreIIFE": true
}
]