You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过ESLint禁止TypeScript中特定类的默认构造函数调用?

限制TypeScript中默认构造函数调用的ESLint配置方法

完全可行,你之前用no-restricted-syntax没成功大概率是选择器写法不对。以下是具体配置步骤:

  • 打开你的ESLint配置文件(比如.eslintrc.json或.eslintrc.js),在rules字段中添加no-restricted-syntax规则的自定义配置:
{
  "rules": {
    "no-restricted-syntax": [
      "error",
      {
        "selector": "NewExpression[callee.name='Dog'][arguments.length=0]",
        "message": "禁止直接调用无参数的new Dog(),请使用带参数的构造函数或指定的工厂方法"
      }
    ]
  }
}
  • 配置说明:
    • NewExpression:匹配所有new关键字开头的构造函数调用表达式
    • [callee.name='Dog']:精准限定目标类为Dog
    • [arguments.length=0]:仅拦截无参数的默认构造函数调用
    • message字段可以自定义错误提示文案,方便团队成员理解规则意图

如果你的项目使用@typescript-eslint插件,确保已正确配置@typescript-eslint/parser作为ESLint解析器,这样规则能正确识别TypeScript语法结构。

内容的提问来源于stack exchange,提问作者Eslint_learner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 04:37:02