【问题标题】:Can I have a project-specific custom code deprecation message using eslint?我可以使用 eslint 获得特定于项目的自定义代码弃用消息吗?
【发布时间】:2017-06-11 23:41:00
【问题描述】:

我有一个node.js 项目,它根据.eslintrc 中指定的规则使用gulpgulp-eslint 来检查自己的代码一致性。

现在,我想让它在遇到某个 require 时抛出自定义弃用警告:

const someModule = require('myDeprecatedModule');
// Warning: myDeprecatedModule is deprecated. Use myNewModule in stead.

这是否可能以一种简单的方式被 IDE 采用?

  • 使用.eslint
  • 没有自定义插件可以使用npm发布和安装
  • 仅可以推送到存储库的本地代码,没有全局代码
  • node_modules 中没有自定义代码

【问题讨论】:

    标签: node.js gulp eslint


    【解决方案1】:

    no-restricted-modules 规则正是这样做的:它不允许需要某些模块。

    弃用模块的名称必须在配置中编码。因此,为了禁止已弃用的 myDeprecatedModule,您可以将此设置添加到您的 .eslintrc 文件中的 "rules" 部分下。

    "no-restricted-modules": ["error", "myDeprecatedModule"]
    

    我不认为可以自定义错误消息。使用自定义插件可以做到这一点。

    【讨论】:

    • 赞成。这似乎是一个很好的中间立场。我会检查一下。我现在将问题悬而未决,看看是否有人想出一种方法来获得不需要向其他开发人员解释的更量身定制的友好错误消息。 ("不,它们不受限制,但是,...")
    • 没有其他内置选项。有一张票可以在此处添加对此规则的增强功能以​​允许自定义消息:github.com/eslint/eslint/issues/7532
    猜你喜欢
    • 1970-01-01
    • 2014-02-05
    • 2012-03-29
    • 1970-01-01
    • 2016-08-02
    • 2015-12-14
    • 1970-01-01
    • 2021-09-01
    • 1970-01-01
    相关资源
    最近更新 更多