如何使用ESLint 2禁用某些ES2015功能



在ESLint 1中,我可以使用ecmaFeatures选项禁用或启用某些语言功能。例如

ecmaFeatures:
  defaultParams:  false

以上配置禁用defaultParams

这非常有用,因为在像Node这样的运行时中,并不是所有功能都可用,而且我不想使用transpiler。

但在ESLint 2中,它被删除了。您只得到了ecmaVersion,即使ecmaVersion为5,它也不会对ES2015功能的使用发出警报。我想这是有道理的,因为JavaScript解释器会抱怨在解释时使用了不受支持的语法,但为具有不同级别ES2015支持的浏览器开发呢?适用于Chrome的语法不适用于IE9。

是否有任何方法可以减少语言功能的使用,例如禁用析构函数

没有限制语法规则禁止特定语法。这个"语法"是指AST节点的类型。AST的规格如下:https://github.com/estree/estree

eslint插件节点的无不支持功能规则不允许特定节点的版本提供不支持的ECMA功能。我不知道是否存在类似的浏览器规则。

最新更新