Typescript + eslint Linter 不会报错
Typescript + eslint Linter not get errors
我按照 de docs 使用 eslint 设置打字稿。
然后把我的 package.json 这个脚本条目 "lint": "eslint --ext .js,.ts --quiet src/"
当我 运行 npm run lint
我得到
> eslint --ext .js,.ts --quiet src/
Process finished with exit code 0
但是我有一个文件我知道是错误的,当我打开它时我可以看到错误
TS2322: Type '{ id: string; created_at: Date; due_date: Date; reminder_at: Date;
expiration_date: Date; paid_at: Date | null; paid_amount: number; status: string;
paid_interest_and_fine?: number | undefined; ... 16 more ...; taxes: Taxes; }' is not
assignable to type 'SubscriptionPaymentItem'. Types of property
'paid_interest_and_fine' are incompatible. Type 'number | undefined' is not
assignable to type 'number'. Type 'undefined' is not assignable to type 'number'.
如果有什么问题,可以使用 webstorm。
所以我的问题是:eslint 不应该指出这个错误?
这是我的 eslintrc 的重要部分,extends
比教程更多,因为它来自 firebase 函数项目
module.exports = {
root: true,
parser: '@typescript-eslint/parser',
parserOptions: {
project: ['tsconfig.json', 'tsconfig.dev.json'],
sourceType: 'module',
},
ignorePatterns: [
'/lib/**/*', // Ignore built files.
'/database/**/*',
'**/experiments/**/*',
],
extends: [
'eslint:recommended',
'plugin:@typescript-eslint/recommended',
'google',
'plugin:prettier/recommended',
'prettier',
'plugin:import/errors',
'plugin:import/warnings',
'plugin:import/typescript',
],
plugins: ['@typescript-eslint', 'import', 'simple-import-sort'],
正如@Phil 所指出的,我真正需要的是将 tsc 与 --noEmit
标志一起使用
我按照 de docs 使用 eslint 设置打字稿。
然后把我的 package.json 这个脚本条目 "lint": "eslint --ext .js,.ts --quiet src/"
当我 运行 npm run lint
我得到
> eslint --ext .js,.ts --quiet src/
Process finished with exit code 0
但是我有一个文件我知道是错误的,当我打开它时我可以看到错误
TS2322: Type '{ id: string; created_at: Date; due_date: Date; reminder_at: Date;
expiration_date: Date; paid_at: Date | null; paid_amount: number; status: string;
paid_interest_and_fine?: number | undefined; ... 16 more ...; taxes: Taxes; }' is not
assignable to type 'SubscriptionPaymentItem'. Types of property
'paid_interest_and_fine' are incompatible. Type 'number | undefined' is not
assignable to type 'number'. Type 'undefined' is not assignable to type 'number'.
如果有什么问题,可以使用 webstorm。
所以我的问题是:eslint 不应该指出这个错误?
这是我的 eslintrc 的重要部分,extends
比教程更多,因为它来自 firebase 函数项目
module.exports = {
root: true,
parser: '@typescript-eslint/parser',
parserOptions: {
project: ['tsconfig.json', 'tsconfig.dev.json'],
sourceType: 'module',
},
ignorePatterns: [
'/lib/**/*', // Ignore built files.
'/database/**/*',
'**/experiments/**/*',
],
extends: [
'eslint:recommended',
'plugin:@typescript-eslint/recommended',
'google',
'plugin:prettier/recommended',
'prettier',
'plugin:import/errors',
'plugin:import/warnings',
'plugin:import/typescript',
],
plugins: ['@typescript-eslint', 'import', 'simple-import-sort'],
正如@Phil 所指出的,我真正需要的是将 tsc 与 --noEmit
标志一起使用