Skip to content
← Back to rules

unicorn/prefer-export-from 样式

💡 A suggestion is available for this rule.

作用

当从某个模块重新导出时,没有必要先导入再导出。 可以使用一条单独的 export…from 声明来完成。 这条规则鼓励使用直接重新导出语法(export ... from),而不是先导入再导出。 它有助于减少样板代码,并通过避免不必要的局部绑定来保持模块作用域整洁。

为什么这是不好的?

将重新导出拆分为 import 和 export 语句是不推荐的,因为这会 不必要地污染当前模块的作用域,并增加多余的样板代码。

示例

以下是此规则的错误代码示例:

js
import defaultExport from "./foo.js";
export default defaultExport;

以下是此规则的正确代码示例:

js
export { default } from "./foo.js";

以下是此规则的错误代码示例:

js
import { named } from "./foo.js";
export { named };

以下是此规则的正确代码示例:

js
export { named } from "./foo.js";

配置

此规则接受一个配置对象,包含以下属性:

checkUsedVariables

类型:boolean

默认值:true

当为 false 时,如果任何导入绑定在除重新导出之外的其他地方被使用,则会忽略导入声明中的所有变量。

如何使用

To enable this rule using the config file or in the CLI, you can use:

json
{
  "rules": {
    "unicorn/prefer-export-from": "error"
  }
}
ts
import { defineConfig } from "oxlint";

export default defineConfig({
  rules: {
    "unicorn/prefer-export-from": "error",
  },
});
bash
oxlint --deny unicorn/prefer-export-from

版本

此规则已在 v1.70.0 中添加。

参考资料