博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ESlint对于团队开发的重要性
阅读量:6626 次
发布时间:2019-06-25

本文共 2971 字,大约阅读时间需要 9 分钟。

什么是ESlint?

ESlint是一种代码检查机制,通过设置一些规范使得代码更规范和更易读

为什么需要ESLint

    每一位程序员都有自己习惯的编写代码的习惯,这对于团队开发来说并不是什么好事,如果没有一种代码规范那会使得别人看你的代码或者自己看别人的代码会很吃力。那么如果每个人都按照某种代码规范来编写代码,岂不是你好我好大家好!!!!。这是ESlint就会派上用场了。

我的vue项目中使用到的ESlint相关配置如下

本人用的是强大的vscode IDE,以下是.eslintrc.js中eslint的相关配置(属于较宽松的配置),仅供参考

module.exports = {    //默认情况下,ESLint 会在所有父级目录里寻找配置文件,一直到根目录。如果你想要你所有项目都遵循一个特定的约定时,这将会很有用,但有时候会导致意想不到的结果。为了将 ESLint 限制到一个特定的项目,在你项目根目录下的 package.json 文件或者 .eslintrc.* 文件里的 eslintConfig 字段下设置 "root": true。ESLint 一旦发现配置文件中有 "root": true,它就会停止在父级目录中寻找。    root: true,    parser: 'babel-eslint',    parserOptions: {        sourceType: 'module'    },    env: {        browser: true,    },    // https://github.com/standard/standard/blob/master/docs/RULES-en.md    extends: 'standard',    // required to lint *.vue files    plugins: [        'html'    ],    // add your custom rules here    'rules': {        // 0(off)关闭规则 1(warn) 作为警告显示(不影响程序运行) 2(error) 作为错误显示(程序终止运行)        // 要求箭头函数的参数使用圆括号        'arrow-parens': 1,        // allow async-await 强制 generator 函数中 * 号周围使用一致的空格        'generator-star-spacing': 0,        // allow debugger during development        'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0,        "indent": [0, 4],//换行时缩进4字符        //        "no-tabs": 2, //不允许使用制表符        "semi": 0, //语句末尾不强制使用分号        "quotes": 0, //不强制使用单引号和双引号        "quote-props": 0,//对象字面量中的属性名不强制使用单引号和双引号        "spaced-comment": 0, //注释风格有没有空格都可以        "eqeqeq": 2, //必须使用 “===” 和 “!==”        "no-unused-vars": [1, {            "vars": "all",            "args": "all"        }], //不能有声明后未被使用的变量或参数        "arrow-parens": [1, "always"],        "comma-dangle": [1, {            "arrays": "never",            "objects": "never",            "imports": "never",            "exports": "never",            "functions": "ignore"        }], //对象或数组的最后一个元素不允许加逗号        "no-ternary": 0, //允许使用三目运算符        "no-trailing-spaces": 0, //一行结束后面不要有空格        "space-infix-ops": 1,//操作符周围需要加空格        "padded-blocks": 1,//块语句内 行首和行尾不强制要求加空行        "brace-style": [1, "1tbs"],//块的开头大括号放置在与其相应的语句或声明相同的行上        "camelcase": [1, {
"properties": "always"}],//强制驼峰法命名 "comma-spacing": [1, { "before": false, "after": true }],//逗号后边需要使用相同的间隙 "space-before-function-paren": 0,//函数定义时括号前面可以没有空格 "new-cap": 1,//构造函数名首字母必须大写 "no-lonely-if": 1,//else代码块中不能再嵌套if语句 "no-new-object": 1, //创建对象时不允许 new Object(),只能 使用对象字面量的方法 let obj={} "no-confusing-arrow": 1, //不允许这样var x = a => 1 ? 2 : 3;的写法,需要重写为var x = a => { return 1 ? 2 : 3; }; "no-duplicate-imports": [1, { "includeExports": true }],//es6中不允许重复导入模块 "new-parens": 1,//调用没有参数的构造函数时,需要括号 "no-unneeded-ternary": 1, //当存在更简单的替代方案时,此规则不允许三元操作符。 "no-use-before-define": 2,//变量声明前不允许使用 "no-undefined": 2//不允许使用undefined为变量赋值 }}复制代码

至于vue项目如何开启ESLint代码检查,请读者自行百度,网上很多哦,

查看更多ESlint配置请移步至ESlint官网

如果你的项目是react项目或者ng项目请自行百度,网上很多哦

转载于:https://juejin.im/post/5b0faf3df265da08d467a2c1

你可能感兴趣的文章
从自动驾驶到学习机器学习:解读2017科技发展的15大趋势
查看>>
SinoBBD探索"一体化"大数据创新发展
查看>>
互联网金融带来新机遇 数据合规性不容忽视
查看>>
智能家庭本周锋闻:专注跨界100年
查看>>
在Linux中永久并安全删除文件和目录的方法
查看>>
全民直播时代 内容监管还得靠技术
查看>>
10款Web开发最佳的Python框架
查看>>
c++ 类的对象与指针
查看>>
【算法】数据结构
查看>>
Boolean operations between triangle meshes
查看>>
面积并
查看>>
java-JDBC
查看>>
通信术语解释
查看>>
javascript中数据属性与访问器属性
查看>>
对.NET跨平台的随想
查看>>
CSS实现各种方向三角形
查看>>
python字符串内容替换的方法(转载)
查看>>
ng-view 路由 简单应用
查看>>
Nginx Rewrite规则初探(转)
查看>>
Spring学习笔记1——IOC: 尽量使用注解以及java代码(转)
查看>>