本篇文章主要介紹了webpack引入eslint配置詳解,現在分享給大家,也給大家做個參考。
webpack中eslint使用
首先,要讓webpack支援eslint,就要安裝eslint-loader ,指令如下:
npm install --save-dev eslint-loader
在webpack .config.js 中加入以下程式碼:
{ test: /\.js$/, loader: 'eslint-loader', enforce: "pre", include: [path.resolve(__dirname, 'src')], // 指定检查的目录 options: { // 这里的配置项参数将会被传递到 eslint 的 CLIEngine formatter: require('eslint-friendly-formatter') // 指定错误报告的格式规范 } }
附註:formatter預設為stylish,如果想用第三方的可以安裝插件,如上方的範例中的eslint-friendly-formatter 。
其次,要想webpack具有eslint 的能力,就要安裝eslint,指令如下:
npm install --save-dev eslint
最後,專案想要使用那些eslin規則,可以建立一個設定檔'.eslintrc .js',程式碼如下:
module.exports = { root: true, parserOptions: { sourceType: 'module' }, env: { browser: true, }, rules: { "indent": ["error", 2], "quotes": ["error", "double"], "semi": ["error", "always"], "no-console": "error", "arrow-parens": 0 } }
這樣,一個簡單的webpack引入eslint已經完成了。
這裡講一下eslintrc.js 的設定使用,詳細細節請參考http://eslint.cn/docs/user-guide
eslint 設定項目
#root 限定設定檔的使用範圍
parser 指定eslint的解析器
parserOptions 設定解析器選項
extends 指定eslint規格
#plugins 引用第三方的外掛程式
extends
我們可以使用eslint官方推薦的,也可以使用一些大公司提供的,如:aribnb, google, standard。 在開發中我們一般使用第三方的。 官方推薦只需在.eslintrc.js 中加入以下程式碼:extends: 'eslint:recommended', extends: 'eslint:all',
npm install --save-dev eslint-config-airbnb // bnb npm install --save-dev eslint-config-standard // standard
extends: 'eslint:google', // or extends: 'eslint:standard',
{ "rules": { "semi": ["error", "always"], "quotes": ["error", "double"] } }
plugins(html)
安裝eslint-plugin-html ,指令如下:npm install --save-dev eslint-plugin-html
settings: { 'html/html-extensions': ['.html', '.vue'], 'html/indent': '+2', },
限定使用範圍(root: true)
如果我們想要在不同的目錄中使用不同的.eslintrc, 我們就需要在該目錄中加入如下的設定項:{ "root": true }
parser(指定解析器)
babel-eslint 解析器是一种使用频率很高的解析器,因为现在很多公司的很多项目目前都使用了es6,为了兼容性考虑基本都使用babel插件对代码进行编译。而用babel编译后的代码使用 babel-eslint 这款解析器可以避免不必要的麻烦。
babel-eslint 安装命令:
npm install --save-dev babel-eslint
在 .eslintrc.js 配置文件中添加如下配置项代码:
parser: 'babel-eslint',
如果你使用的默认解析器的话,且在代码中使用了浏览器有兼容性的问题的js新特性,使用webpack编译就会出现问题,这时我们一般装最新的eslint或者安装是使用 babel-eslint 来解决问题。
env(环境)
在 .eslintrc.js 中添加如下代码:
"env": { "browser": true, // "node": true // }
指定了环境,你就可以放心的使用它们的全局变量和属性。
global
指定全局变量。
在 .eslintrc.js 中添加如下代码:
"globals": { "var1": true, "var2": false }
上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
以上是在webpack中使用eslint配置(詳細教學)的詳細內容。更多資訊請關注PHP中文網其他相關文章!