vue-cli下ESlint 報錯解決(工具是webstorm)2018.07.18更新

#

#

最近在使用 vue-cli ,安裝了eslint。之前還是好好的,就是這一次開始報錯了。報錯顯示:expected indentation of 0 spaces but found 0 spaces
image

1、剛開始查看了下,以爲是webstorm的代碼格式化與 eslint 的代碼規範不一致,但是查看了下:兩者是一樣的;所以不是這個原因,繼續排查。

image

2、繼續排查:我於是查看了eslint 的配置文件,我好奇爲啥之前的項目沒有報錯,現在的居然報錯。於是對比了之前項目的.exlintrc.js 和 現在項目的 .eslintrc.js 文件。發現果然這兩個文件,有變動。

注意:同時還要安裝npm eslint-html-plugin –save-dev插件

image

3、.eslintrc.js 詳細備註:

這是編寫eslint規則的文件

module.exports = {
    // 默認情況下,ESLint會在所有父級組件中尋找配置文件,一直到根目錄。ESLint一旦發現配置文件中有   "root": true,它就會停止在父級目錄中尋找。
    root: true,
    // 對Babel解析器的包裝使其與 ESLint 兼容。
    parser: 'babel-eslint',
    parserOptions: {
        // 代碼是 ECMAScript 模塊
        sourceType: 'module'
    },
    env: {
        // 預定義的全局變量,這裏是瀏覽器環境
        browser: true,
    },
    // 擴展一個流行的風格指南,即 eslint-config-standard
    // https://github.com/feross/standard/blob/master/RULES.md#javascript-standard-style
    extends: 'standard',
    // required to lint *.vue files
    plugins: [
        // 此插件用來識別.html 和 .vue文件中的js代碼
        'html',
        // standard風格的依賴包
        "standard",
        // standard風格的依賴包
        "promise"
    ],
    //配置的一些規則
    'rules': {
    // allow paren-less arrow functions
    'arrow-parens': 0,
    // allow async-await
    'generator-star-spacing': 0,
    // allow debugger during development
    'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0
    }
}

2018.07.18注意:以下是我嘗試的方法。

  • 我排查的方式:
    • 單獨修改.eslintrc.js的plugin規則,以及rules規則,都沒用。包括在eslintrc.js的rules添加的”indent”: [2, 4],//縮進風格,還是沒用。
    • 修改webstrom的編程代碼的風格,還是沒用
    • 修改.editorconfig文件的縮進配置,還是沒用

2018.07.18更新

最近,在使用eslint的時候,又報錯了。最終解決方案如下:

將package.json中的關於eslint的最新配置刪掉,換成之前的舊版本的eslint相關配置。同時在eslintrc.js中的rulus規則中添加’html’(不懂的見本文章前面)

"eslint": "^4.15.0",
    "eslint-config-standard": "^10.2.1",
    "eslint-friendly-formatter": "^3.0.0",
    "eslint-loader": "^1.7.1",
    "eslint-plugin-html": "^2.0.0",
    "eslint-plugin-import": "^2.7.0",
    "eslint-plugin-node": "^5.2.0",
    "eslint-plugin-promise": "^3.4.0",
    "eslint-plugin-standard": "^3.0.1",
    "eslint-plugin-vue": "^4.0.0",
替換爲:
"eslint": "^3.19.0",
    "eslint-friendly-formatter": "^2.0.7",
    "eslint-loader": "^1.7.1",
    "eslint-plugin-html": "^2.0.0",
    "eslint-config-standard": "^6.2.1",
    "eslint-plugin-promise": "^3.4.0",
    "eslint-plugin-standard": "^2.0.1",

參考:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章