使用 ESLint 禁止项目导入特定模块
项目团队成员希望能够禁用某些 JS 依赖。比如有团队成员希望使用 lodash 而将这个巨大的依赖引入项目,导致项目整体过分臃肿。团队成员应当使用 lodash-es 来避免这种情况。那么 ESLint 就提供了一个名为 no-restricted-imports
规则,这个规则就是统一规范在项目中禁止使用的依赖。
使用方法
完整配置规则
假设我们不希望在项目中引入 lodash,那么配置规则:
rules: {
'no-restricted-imports': [
'error',
{
paths: [{
name: 'lodash',
message: '不要使用 lodash,请使用 lodash-es 作为替代'
}]
}
]
}
如果有团队成员试图引入 lodash 这个依赖
import _ from 'lodash'
那么就会报错,并提示 message 信息
不需要显示提示信息
如果不需要显示任何提示信息,那么 message 可以被省略,写法如下:
'no-restricted-imports': ['error', 'lodash', 'underscore']
使用 gitignore-style 写法
'no-restricted-imports': ['error', {
patterns: ['lodash-es/*']
}]
如果违反规则会出现以下报错信息:
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。