esLint:作代碼統一風格規範

1.eslint介紹

2.全局和本地安裝

npm install eslint -ghtml

npm install eslint -save-devnode

3.配置文件的多種方法:

eslintrc.js(咱們推薦使用這個主流方法)react

.eslintrc.yaml文件webpack

.eslintrc.jsones6

註釋的寫法web

能夠直接配置在webpack的屬性中npm

能夠配置在npm的package.json文件中json

4.用eslintrc.js配置

1>下載npm install eslint-loader -save-devbabel

2>指定eslint的配置文件,若是不指定有默認的優先執行順序 ide

3>在loader中配置加載器

4>經過.eslintignore文件指定不須要走eslint規範的代碼 

5>以後執行webpack的運行命令就能夠看到效果了

.eslintrc.js文件配置的代碼:

http://eslint.cn/docs/rules/

module.exports = {
    // 開啓推薦配置信息
    // "extends": "eslint:recommended",
    // 默認狀況下,ESLint 會在全部父級目錄裏尋找配置文件,一直到根目錄。若是你想要你全部項目都遵循一個特定的約定時,這將會頗有用,但有時候會致使意想不到的結果。爲了將 ESLint 限制到一個特定的項目,在你項目根目錄下的 package.json 文件或者 .eslintrc.* 文件裏的 eslintConfig 字段下設置 "root": true。ESLint 一旦發現配置文件中有 "root": true,它就會中止在父級目錄中尋找。
    "root": true,
    // 腳本在執行期間訪問的額外的全局變量
    // 當訪問未定義的變量時,no-undef 規則將發出警告。若是你想在一個文件裏使用全局變量,推薦你定義這些全局變量,這樣 ESLint 就不會發出警告了。你能夠使用註釋或在配置文件中定義全局變量。
    "globals" : {
        "window":true,
        "document":true,
        "$":true
    },
    // 設置插件
    // "plugins": [
    //     'html'
    // ],
    // 設置解析器選項(必須設置這個屬性)
    "parserOptions": {
        "ecmaVersion": 7,
        "sourceType": "module",
        "ecmaFeatures": {
            "jsx": true,
            // "arrowFunctions": true,
            // "experimentalObjectRestSpread": true,
            // "classes": true,
            // "modules": true,
            // "defaultParams": true
        }
    },
    // 啓用的規則及各自的錯誤級別
    "rules" : {
        // 禁止用console
        "no-console":1,
        // 禁止用分號
        "semi":[2,'never'],
        // 在同一個做用域中禁止屢次重複定義
        "no-redeclare":1
    },
    // 指定你想啓用的環境
    "env": {
        "browser": true,
        "node": true
    },
//babel eslint都是babel公司出的
"parser": "babel-eslint"//配置解析es6 };

6>react的特殊支持

若是用了ES6的新語法那麼須要下載一個模塊支持,不然react中寫定義箭頭函數會報錯

npm install babel-eslint -save

在配置文件中添加"parser": "babel-eslint"

注意點:eslint的代碼規範只在開發階段使用

 

 參考文章:

      一些規則的中文說明:http://blog.csdn.net/helpzp2008/article/details/51507428

       http://www.tuicool.com/articles/rIFBfey

相關文章
相關標籤/搜索