我已经在网上和StackOverflow上搜索了很长时间但没有成功。
我想要做的是让ESLint将以下内容标记为错误:
export default ...;
以default
为关键。到目前为止,我所获得的最好的是对eslint-plugin-import
插件及其一些规则的引用,这些规则可以让我更接近目标,即no-anonymous-default-export规则。但即使使用此规则,以下默认导出也是有效的:
const foo = 123
export default foo
export default class MyClass() {}
export default function foo() {}
如何配置ESLint,使这四个也被视为错误?
如果你已经在使用eslint-plugin-import
,你可以使用no-default-export
规则(在2018年2月左右添加)。
你可以用no-restricted-syntax
rule做到这一点。尝试在demo中粘贴它来尝试它(你需要在选项中首先将“Source Type”更改为“module”):
/* eslint "no-restricted-syntax": ["error", {
"selector": "ExportDefaultDeclaration",
"message": "Prefer named exports"
}] */
export default class Foo { } // 5:1 - Prefer named exports (no-restricted-syntax)