【问题标题】:"no-unused-expressions" with TypeScript 3.7 optional call带有 TypeScript 3.7 可选调用的“no-unused-expressions”
【发布时间】:2020-05-25 16:29:10
【问题描述】:

我正在使用带有 @typescript-eslint/parser@typescript-eslint/eslint-plugin 的 TypeScript 3.7 进行 linting。

我正在尝试使用可选链接语法,它在 可选调用 旁边运行良好。

const { hj } = window;
hj?.('formSubmitFailed'); // error

这给了我一个错误:eslint(no-unused-expressions)

有什么方法可以让它与可选调用一起工作?

【问题讨论】:

  • 您检查过 eslint 已知问题吗?你是否使用了最新的 eslint、解析器和 eslint-plugin 版本???
  • @SkorpEN 我正在使用最新版本 2.19.0 和 eslint-6.8.0
  • typescript-eslint 中存在与可选相关的未解决问题。

标签: typescript eslint typescript-eslint optional-chaining


【解决方案1】:

你用的是eslint的no-unused-expressions还是@typescript-eslint/no-unused-expressions?你必须使用后者。

尝试将此添加到您的配置中:

rules: {
    'no-unused-expressions': 'off',
    '@typescript-eslint/no-unused-expressions': 2,
},

【讨论】:

【解决方案2】:

其中一个选项是关闭产生该错误的规则。 例如如何做(你可以选择关闭或警告):

 {
   "extends": "./configs/base.json",
   "rules": {
         "@typescript-eslint/no-unused-expressions": "off"
 }}

更多详情参见例如:https://github.com/typescript-eslint/typescript-eslint/issues/1423 或如何为 typescript-eslint 设置规则。

【讨论】:

  • 当然你也可以看发布。他们可能会使其在 3.0.0 版本中工作,但您必须检查何时完成新功能。
  • 感谢问题的链接,但一般我不想完全关闭规则
  • 所以让它作为警告。并观察问题或发布。当它们完成时,您可以再次打开它们。在当前版本中,它们不起作用,因此不应产生错误。警告似乎没问题。
  • 这个答案中被关闭的规则实际上解决了这个问题。
猜你喜欢
  • 2020-04-09
  • 2021-06-17
  • 2019-03-31
  • 2019-12-31
  • 2020-01-25
  • 2016-09-30
  • 2019-08-20
  • 2020-12-19
相关资源
最近更新 更多