使用ESLint禁止项目导入特定模块的方法步骤


Posted in Javascript onMarch 04, 2019

项目团队成员希望能够禁用某些 JS 依赖。比如有团队成员希望使用 lodash 而将这个巨大的依赖引入项目,导致项目整体过分臃肿。团队成员应当使用 lodash-es 来避免这种情况。那么 ESLint 就提供了一个名为 no-restricted-imports 规则,这个规则就是统一规范在项目中禁止使用的依赖。

使用ESLint禁止项目导入特定模块的方法步骤

使用方法

完整配置规则

假设我们不希望在项目中引入 lodash,那么配置规则:

rules: {
  'no-restricted-imports': [
    'error',
    {
      paths: [{
        name: 'lodash',
        message: '不要使用 lodash,请使用 lodash-es 作为替代'
      }]
    }
  ]
}

如果有团队成员试图引入 lodash 这个依赖

import _ from 'lodash'

那么就会报错,并提示 message 信息

使用ESLint禁止项目导入特定模块的方法步骤

不需要显示提示信息

如果不需要显示任何提示信息,那么 message 可以被省略,写法如下:

'no-restricted-imports': ['error', 'lodash', 'underscore']

使用 gitignore-style 写法

'no-restricted-imports': ['error', {
  patterns: ['lodash-es/*']
}]

如果违反规则会出现以下报错信息:

使用ESLint禁止项目导入特定模块的方法步骤

参考

https://eslint.org/docs/rules/no-restricted-imports

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
asp(javascript)全角半角转换代码 dbc2sbc
Aug 06 Javascript
js特殊字符转义介绍
Nov 05 Javascript
javascript实现删除前弹出确认框
Jun 04 Javascript
Bootstrap每天必学之折叠(Collapse)插件
Apr 25 Javascript
JS操作input标签属性checkbox全选的实现代码
Mar 02 Javascript
vue.js指令v-model使用方法
Mar 20 Javascript
ES6新特性之类(Class)和继承(Extends)相关概念与用法分析
May 24 Javascript
Angular.js中angular-ui-router的简单实践
Jul 18 Javascript
解决linux下node.js全局模块找不到的问题
May 15 Javascript
如何从头实现一个node.js的koa框架
Jun 17 Javascript
vue中进行微博分享的实例讲解
Oct 14 Javascript
js实现QQ邮箱邮件拖拽删除功能
Aug 27 Javascript
微信小程序textarea层级过高的解决方法
Mar 04 #Javascript
浅析vue中的MVVM实现原理
Mar 04 #Javascript
JavaScript实现的九种排序算法
Mar 04 #Javascript
如何在JavaScript中优雅的提取循环内数据详解
Mar 04 #Javascript
iview tabs 顶部导航栏和模块切换栏的示例代码
Mar 04 #Javascript
Vuex mutitons和actions初使用详解
Mar 04 #Javascript
JS重学系列之聊聊new操作符
Mar 04 #Javascript
You might like
PHP操作文件方法问答
2007/03/16 PHP
php 什么是PEAR?(第二篇)
2009/03/19 PHP
php计算两个坐标(经度,纬度)之间距离的方法
2015/04/17 PHP
php 无限分类 树形数据格式化代码
2016/10/11 PHP
js 效率组装字符串 StringBuffer
2009/12/23 Javascript
IE与FF下javascript获取网页及窗口大小的区别详解
2014/01/14 Javascript
浅析Javascript中“==”与“===”的区别
2014/12/23 Javascript
Jquery easyui 实现动态树
2015/11/17 Javascript
基于jQuery实现简单的折叠菜单效果
2015/11/23 Javascript
第一次接触神奇的Bootstrap菜单和导航
2016/08/01 Javascript
Bootstrap实现的标签页内容切换显示效果示例
2017/05/25 Javascript
vue 添加vux的代码讲解
2017/11/30 Javascript
详解angular2.x创建项目入门指令
2018/10/11 Javascript
Nuxt.js之自动路由原理的实现方法
2018/11/21 Javascript
Python比较两个图片相似度的方法
2015/03/13 Python
python实现随机森林random forest的原理及方法
2017/12/21 Python
对dataframe进行列相加,行相加的实例
2018/06/08 Python
python读取目录下所有的jpg文件,并显示第一张图片的示例
2019/06/13 Python
使用python代码进行身份证号校验的实现示例
2019/11/21 Python
Anaconda+VSCode配置tensorflow开发环境的教程详解
2020/03/30 Python
详解Python的爬虫框架 Scrapy
2020/08/03 Python
如何用Python绘制3D柱形图
2020/09/16 Python
python drf各类组件的用法和作用
2021/01/12 Python
DHC美国官网:日本通信销售第一的化妆品品牌
2017/11/12 全球购物
Speedo速比涛中国官方网站:全球领先泳装运动品牌
2018/04/24 全球购物
PatPat德国:妈妈的每日优惠
2019/10/02 全球购物
意大利文具和办公产品在线商店:Y-Office
2020/02/27 全球购物
年终自我鉴定
2013/10/09 职场文书
董事长秘书岗位职责
2013/11/29 职场文书
退伍老兵事迹材料
2014/01/31 职场文书
工程材料采购方案
2014/05/18 职场文书
物业保安辞职信
2015/05/12 职场文书
2015年小学校长工作总结
2015/05/19 职场文书
python实现自定义日志的具体方法
2021/05/28 Python
Python内置数据类型中的集合详解
2022/03/18 Python
SpringBoot2零基础到精通之数据库专项精讲
2022/03/22 Java/Android