vue項目中開啓Eslint碰到的一些問題及其規範

 eslint是一種代碼風格管理的工具,能夠制定一些代碼編寫規範,在vue項目中常常用到vue

 

一、'layer' is defined but never used   這是定義了一個變量可是未使用到該變量,vue常常須要在全局進行聲明,以便任何組件都能用到,可是常常會這樣警告curl

能夠在 .eslintrc.js 文件中修改配置,增長以下代碼:async

"no-unused-vars":"off"
 rules: {
    // allow async-await
    'generator-star-spacing': 'off',
    // allow debugger during development
    'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
    "no-tabs":"off",
    "no-unused-vars":"off"
  }

 

二、最多的常常會碰到空格報錯,去掉空格報錯增長以下代碼函數

"no-irregular-whitespace":"off"工具

 

3.報錯 Newline required at end of file but not found ui

解決辦法就是在後面再加一行url

 

4.報錯信息:Expected error to be handledspa

這是由於回調函數裏面的參數error沒有運用到,因此能夠不設置參數,或者在回調函數內console.log(error)debug

 

 5.報錯信息:Split initialized 'let' declarations into multiple statements eslint

 

 這是不容許多條聲明,可參考 eslint 這條規則, 推薦這樣寫

 

 

如下附上Eslint經常使用規範:

"no-console": "error",                  // 禁止console
"no-alert": "error",                   // 禁止alert,conirm等
"no-debugger": "error",                 // 禁止debugger
"semi": ["error", "never"],               // 禁止分號
"no-tabs": "error",                   // 禁止使用tab
"no-unreachable": "error",               // 當有不能執行到的代碼時
"eol-last": "error",                   // 文件末尾強制換行
"no-new": "error",                    // 禁止在使用new構造一個實例後不賦值
"quotes": ["error", "backtick"],            // 引號類型 `` "" ''
"no-unused-vars": ["error", { "vars": "all", "args": "after-used" }],   // 不能有聲明後未被使用的變量
"no-trailing-spaces": "error",             // 一行結束後面不要有空格
"space-before-function-paren": ["error", "never"], // 函數定義時括號前面要不要有空格
"no-undef": "error",                   // 不能有未定義的變量,定義以前必須有var或者let
"curly": ["error", "all"],                // 必須使用 if(){} 中的{}
'arrow-parens': "error",                 // 箭頭函數的參數要有()包裹
'generator-star-spacing': "error",           // allow async-await
"space-before-function-paren": ["error", "never"],  // 禁止函數名前有空格,如function Test (aaa,bbb)
"space-in-parens": ["error", "never"],         // 禁止圓括號有空格,如Test( 2, 3 )
"space-infix-ops": "error",               //在操做符旁邊必須有空格, 如 a + b而不是a+b
"space-before-blocks": ["error", "always"],      // 語句塊以前必須有空格 如 ) {}
"spaced-comment":["error", "always"],         // 註釋前必須有空格
"arrow-body-style": ["error", "always"],       // 要求箭頭函數必須有大括號 如 a => {}
"arrow-parens": ["error", "always"],         //要求箭頭函數的參數必有用括弧包住,如(a) =>{}
"arrow-spacing": ["error", { "before": true, "after": true }], // 定義箭頭函數的箭頭先後都必須有空格
"no-const-assign": "error",                // 禁止修改const變量
"template-curly-spacing": ["error", "never"],   // 禁止末班字符串中的{}中的變量出現空格,如如下錯誤`${ a }`
"no-multi-spaces": "error",             // 禁止多個空格,只有一個空格的地方必須只有一個
"no-whitespace-before-property": "error",     // 禁止屬性前有空格,如obj. a
"keyword-spacing":["error",{"before": true, "after": true}]   //關鍵字先後必須有空格 如 } else {

參考:https://www.jianshu.com/p/9c1943a53393

相關文章
相關標籤/搜索