首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

no-duplicate-imports

每个模块使用单个import语句会使代码更加清晰,因为您可以在一行中看到从该模块导入的所有内容。

在以下示例中,第1行上的module导入在第3行上重复。可以合并这些导入以使导入列表更加简洁。

代码语言:javascript
复制
import { merge } from 'module';
import something from 'another-module';
import { find } from 'module';

规则细节

此规则要求从单个模块进行的所有导入都以单一import语句存在。

此规则的错误代码示例:

代码语言:javascript
复制
/*eslint no-duplicate-imports: "error"*/

import { merge } from 'module';
import something from 'another-module';
import { find } from 'module';

此规则的正确代码示例:

代码语言:javascript
复制
/*eslint no-duplicate-imports: "error"*/

import { merge, find } from 'module';
import something from 'another-module';

选项

该规则采用一个可选参数,一个具有单个键的对象,includeExports,这是一个boolean。它默认为false

如果从导入的模块重新导出,则应该将导入添加到import语句中,然后直接导出,而不是使用export ... from

此规则的错误代码示例包含以下{ "includeExports": true }选项:

代码语言:javascript
复制
/*eslint no-duplicate-imports: ["error", { "includeExports": true }]*/

import { merge } from 'module';

export { find } from 'module';

此规则的正确代码示例包含以下{ "includeExports": true }选项:

代码语言:javascript
复制
/*eslint no-duplicate-imports: ["error", { "includeExports": true }]*/

import { merge, find } from 'module';

export { find };

版本

这条规则是在 ESLint 2.5.0中引入的。

资源

扫码关注腾讯云开发者

领取腾讯云代金券