Miksi saan TypeScript Eslint -varoituksen 'Turha ehtolause, arvo on aina tosi eslint@typescript-eslint/no-unnecessary-condition'
Minulla on nämä esimerkit (muun muassa, siirtyminen TypeScriptiin JS:stä).
Missä let diff=(oldIndent - newIndent)/2 viimeisessä.
Miksi se tekee näin? Onko se joku bugi? Mitä teen väärin?
.prettierrc
{
"semi": false,
"trailingComma": "all",
"singleQuote": true,
"printWidth": 64,
"tabWidth": 2,
"useTabs": false,
"arrowParens": "avoid",
"quoteProps": "as-needed",
"bracketSpacing": true,
"proseWrap": "always",
"endOfLine": "lf",
"singleAttributePerLine": true,
"prettierPath": "./node_modules/prettier"
}
tsconfig.json
{
"compilerOptions": {
"module": "commonjs",
"target": "es2020",
"lib": ["es2020"],
"outDir": "host",
"rootDir": "make",
"sourceMap": true,
"strictNullChecks": true
},
"include": ["make"],
"exclude": ["node_modules"]
}
.eslintrc.json
{
"env": {
"browser": true,
"es2021": true
},
"parserOptions": {
"ecmaVersion": "latest",
"sourceType": "module",
"project": ["./tsconfig.json"]
},
"parser": "@typescript-eslint/parser",
"plugins": ["@typescript-eslint"],
"extends": [],
"rules": {
"curly": 2,
"brace-style": ["error", "1tbs"],
"@typescript-eslint/quotes": [
"error",
"single",
{
"avoidEscape": true,
"allowTemplateLiterals": true
}
],
"@typescript-eslint/no-unnecessary-condition": {
"allowConstantLoopConditions": true
}
}
}
.vscode/asetukset.json
{
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true,
"eslint.format.enable": true,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true
},
"eslint.validate": ["javascript", "typescript"],
"eslint.nodePath": "./node_modules/eslint",
"eslint.packageManager": "npm"
}
Se alkaa tuntua oudolta.... Yritin sulkea ja avata tiedoston uudelleen, mutta samat ongelmat jatkuvat. (Tässä näkyvät aaltoviivat osoittavat samaa ongelmaa).
Huomaa, kuinka se esiintyy paljon satunnaisissa paikoissa (kuten oikealla olevassa sivupalkissa on esitetty).




