typescript - @typescript-eslint/typedef 启用调用签名

标签 typescript eslint

我最近升级了我的角度应用程序以使用 eslint 而不是 tslint。

我现在正在努力启用call-signature typedef

所以,之前,我有这个:

"typedef": [
    true,
    ...,
    "call-signature"
]

但是在 Eslint 中,我找不到对应的东西。当浏览their git page时,我看到这个:

type Options = {
  arrayDestructuring?: boolean;
  arrowParameter?: boolean;
  memberVariableDeclaration?: boolean;
  objectDestructuring?: boolean;
  parameter?: boolean;
  propertyDeclaration?: boolean;
  variableDeclaration?: boolean;
  variableDeclarationIgnoreFunction?: boolean;
};

如何启用呼号?

尽管将所有内容设置为 true,但这样做不会触发任何警告:

public someMethod() {}

这是我的 tslint 配置:

"@typescript-eslint/typedef": [
    "warn",
    {
        "arrayDestructuring": true,
        "arrowParameter": true,
        "memberVariableDeclaration": true,
        "objectDestructuring": true,
        "parameter": true,
        "propertyDeclaration": true,
        "variableDeclaration": true,
        "variableDeclarationIgnoreFunction": true
    }
]

我尝试添加调用签名,但没有帮助。

最佳答案

根据文档,您必须使用此规则来强制执行类型定义。

"@typescript-eslint/explicit-function-return-type": [
      "error",
      {
        "allowExpressions": true
      }
    ]

您可以引用这里: https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/explicit-function-return-type.md

这将在函数、箭头函数和类方法上强制执行 TSLint 相同的返回类型定义规则集。

关于typescript - @typescript-eslint/typedef 启用调用签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68374703/

相关文章:

typescript - 在 <script setup> 中出现不当警告时如何正确配置 ESLint?

javascript - 如何在 vue.js 的 <template> 中禁用段落的 eslint 规则最大行长度?

javascript - eslint - vscode 的可选链接错误

typescript - 关闭接口(interface)的 eslint 规则?

javascript - typescript /Angular 传递值?

angular - Angular 4 中的解析器依赖

dependency-injection - Aurelia & Typescript 注入(inject)和继承

javascript - 设置 div 元素的 top 属性

javascript - 如何将 typescript 类转换为带有周围字符串的 JSON?

javascript - commands.js 中未定义 Cypress 和 cy,但一切正常