vue項目eslint配置 以及 解釋


  1 // https://eslint.org/docs/user-guide/configuring
  2 
  3 module.exports = {
  4     root: true,
  5     parserOptions: {
  6         parser: 'babel-eslint'
  7     },
  8     env: {
  9         browser: true,
 10         jquery: true
 11     },
 12     extends: [
 13         // https://github.com/vuejs/eslint-plugin-vue#priority-a-essential-error-prevention
 14         // consider switching to `plugin:vue/strongly-recommended` or `plugin:vue/recommended` for stricter rules.
 15         'plugin:vue/essential',
 16         // https://github.com/standard/standard/blob/master/docs/RULES-en.md
 17         'standard'
 18     ],
 19     // required to lint *.vue files
 20     plugins: [
 21         'vue'
 22     ],
 23     // add your custom rules here
 24     rules: {
 25         // 定義對象的set存取器屬性時,強制定義get
 26         'accessor-pairs': 0,
 27         // 在數組括號內強制實現一致的間距。
 28         'array-bracket-newline': 0,
 29         // 指定數組的元素之間要以空格隔開(, 后面), never參數:[ 之前和 ] 之后不能帶空格,always參數:[ 之前和 ] 之后必須帶空格
 30         'array-bracket-spacing': [2, 'never'],
 31         // 強制數組方法的回調函數中有 return 語句
 32         'array-callback-return': 1,
 33         // 強制數組元素間出現換行
 34         'array-element-newline': 0,
 35         // 要求箭頭函數體使用大括號
 36         'arrow-body-style': 2,
 37         // 要求箭頭函數的參數使用圓括號
 38         'arrow-parens': 2,
 39         // 要求箭頭函數空格
 40         'arrow-spacing': [2, {'before': true,'after': true}],
 41         // 強制把變量的使用限制在其定義的作用域范圍內
 42         'block-scoped-var': 2,
 43         // 禁止或強制在單行代碼塊中使用空格(禁用)
 44         'block-spacing': 0,
 45         //強制使用一致的縮進 第二個參數為 'tab' 時,會使用tab,
 46         // if while function 后面的{必須與if在同一行,java風格。
 47         'brace-style': [2, '1tbs', { 'allowSingleLine': true }],
 48         // require return statements after
 49         'callback-return': 0,
 50         // 雙峰駝命名格式
 51         'camelcase': 2,
 52         // 注釋 大寫字母開頭,不推薦 注釋的代碼會報錯
 53         'capitalized-comments': 0,
 54         // 如果一個類方法沒有使用this,它有時可以變成一個靜態函數。如果將該方法轉換為靜態函數,那么調用該特定方法的類的實例也必須轉換為靜態調用
 55         'class-methods-use-this': 2,
 56         // 數組和對象鍵值對最后一個逗號, never參數:不能帶末尾的逗號, always參數:必須帶末尾的逗號,
 57         // always-multiline:多行模式必須帶逗號,單行模式不能帶逗號
 58         'comma-dangle': [2, 'never'],
 59         // 控制逗號前后的空格
 60         'comma-spacing': [2, {'before': false,'after': true}],
 61         // 控制逗號在行尾出現還是在行首出現 (默認行尾)
 62         // http: //eslint.org/docs/rules/comma-style
 63         'comma-style': [2,'last'],
 64         // 限制圈復雜度,也就是類似if else能連續接多少個
 65         'complexity': 0,
 66         //'SwitchCase' (默認:0) 強制 switch 語句中的 case 子句的縮進水平
 67         // 以方括號取對象屬性時,[ 后面和 ] 前面是否需要空格, 可選參數 never, always
 68         'computed-property-spacing': [2,'never'],
 69         // 要求 return 語句要么總是指定返回的值,要么不指定
 70         'consistent-return': 2,
 71         // 用於指統一在回調函數中指向this的變量名,箭頭函數中的this已經可以指向外層調用者,應該沒卵用了
 72         // e.g [0,'that'] 指定只能 var that = this. that不能指向其他任何值,this也不能賦值給that以外的其他值
 73         'consistent-this': [2, '_this'],
 74         // 強制在子類構造函數中用super()調用父類構造函數,TypeScrip的編譯器也會提示
 75         'constructor-super': 0,
 76         // 強制所有控制語句使用一致的括號風格
 77         'curly': [2,'all'],
 78         // switch 語句強制 default 分支,也可添加 // no default 注釋取消此次警告
 79         'default-case': 2,
 80         // 強制object.key 中 . 的位置,參數:
 81         // property,'.'號應與屬性在同一行
 82         // object, '.' 號應與對象名在同一行
 83         'dot-location': [2,'property'],
 84         // 強制使用.號取屬性
 85         // 參數: allowKeywords:true 使用保留字做屬性名時,只能使用.方式取屬性
 86         // false 使用保留字做屬性名時, 只能使用[]方式取屬性 e.g [2, {'allowKeywords': false}]
 87         // allowPattern: 當屬性名匹配提供的正則表達式時,允許使用[]方式取值,否則只能用.號取值 e.g [2, {'allowPattern': '^[a-z]+(_[a-z]+)+$'}]
 88         'dot-notation': 0,
 89         // 文件末尾強制換行
 90         'eol-last': 0,
 91         // 使用 === 替代 == allow-null允許null和undefined==
 92         'eqeqeq': [2, 'allow-null'],
 93         //強制 “for” 循環中更新子句的計數器朝着正確的方向移動
 94         'for-direction': "error",
 95         // 要求或禁止函數標識符與其調用之間的間隔
 96         'func-call-spacing': [0, 'always'],
 97         // 要求函數名稱與它們所分配的變量或屬性的名稱相匹配
 98         'func-name-matching': 2,
 99         // 強制使用命名的 function 表達式
100         'func-names': 0,
101         // 強制一致地使用函數聲明或函數表達式,方法定義風格,參數:
102         // declaration: 強制使用方法聲明的方式,function f(){} e.g [2, 'declaration']
103         // expression:強制使用方法表達式的方式,var f = function() {} e.g [2, 'expression']
104         // allowArrowFunctions: declaration風格中允許箭頭函數。 e.g [2, 'declaration', { 'allowArrowFunctions': true }]
105         'func-style': 0,
106         // 在函數括號內強制執行一致的換行符
107         'function-paren-newline': 0,
108         // 強制 generator 函數中 * 號周圍使用一致的空格
109         'generator-star-spacing': [2, {'before': true,'after': true}],
110         // 強制在 getter 屬性中出現一個 return 語句。每個 getter 都期望有返回值。
111         'getter-return': 2,
112         // 要求 require() 出現在頂層模塊作用域中
113         'global-require': 1,
114         // 要求 for-in 循環中有一個 if 語句
115         'guard-for-in': 1,
116         // 要求回調函數中有容錯處理
117         'handle-callback-err': [2,'^(err|error)$'],
118         // 禁止使用指定的標識符
119         'id-blacklist': 0,
120         // 強制標識符的最新和最大長度
121         'id-length': 0,
122         // 要求標識符匹配一個指定的正則表達式
123         'id-match': 0,
124         // 強制執行箭頭函數體的位置,一個箭頭函數體可以包含一個隱式返回,而不是一個塊體。對隱式返回的表達式執行一致的位置可能很有用。
125         'implicit-arrow-linebreak': 0,
126         // 強制執行一致的縮進
127         'indent': [2, 4],
128         // 要求或禁止 var 聲明中的初始化(初值)
129         'init-declarations': 2,
130         // 強制在 JSX 屬性中一致地使用雙引號或單引號
131         'jsx-quotes': 2,
132         // 強制在對象字面量的屬性中鍵和值之間使用一致的間距
133         // 'key-spacing': [2, {'beforeColon': false,'afterColon': true}],
134         // 強制在關鍵字前后使用一致的空格 (前后腰需要)
135         // 'keyword-spacing': [2, {'beforeColon': true, 'afterColon': true}],
136         // 行注釋可以位於代碼上方或旁邊。該規則有助於團隊保持一致的風格。
137         'line-comment-position': 0,
138         // 強制使用一致的換行風格
139         'linebreak-style': 0,
140         // 要求在注釋周圍有空行 ( 要求在塊級注釋之前有一空行)
141         'lines-around-comment': 0,
142         // 這條規則要求或禁止圍繞指令序言的空白換行符。此規則不強制執行有關各個指令之間空白換行符的任何約定。另外,它不需要在指令序言前留出空行,除非它們之前有評論。如果這是您想強制執行的樣式,請使用填充塊規則。
143         'lines-around-directive': 0,
144         // 要求或禁止class成員之間的空行
145         'lines-between-class-members': 2,
146         // 強制執行嵌套塊的最大深度,以降低代碼復雜度。"max"(默認為4)
147         'max-depth': [2,6],
148         // 強制一行的最大長度
149         'max-len': [1, 200, { 'ignoreTemplateLiterals': true }],
150         // 強制最大行數
151         'max-lines': 0,
152         // 強制回調函數最大嵌套深度 5層
153         'max-nested-callbacks': [2, 5],
154         // 強制 function 定義中最多允許的參數數量
155         'max-params': [2, 4],
156         // 強制 function 塊最多允許的的語句數量
157         'max-statements': [2, 200],
158         // 強制每一行中所允許的最大語句數量
159         'max-statements-per-line': 2,
160         // 強化多行評論的特定風格。
161         'multiline-comment-style': 0,
162         // 強制或禁止三元表達式的操作數之間的換行符
163         'multiline-ternary': 0,
164         // 要求構造函數首字母大寫 (要求調用 new 操作符時有首字母大小的函數,允許調用首字母大寫的函數時沒有 new 操作符。)
165         'new-cap': 0,
166         // 要求調用無參構造函數時有圓括號
167         'new-parens': 0,
168         // 要求或禁止 var 聲明語句后有一行空行
169         'newline-after-var': 0,
170         // 要求 return 語句之前有一空行
171         'newline-before-return': 0,
172         // 要求方法鏈中每個調用都有一個換行符
173         'newline-per-chained-call': 0,
174         // 禁用 alert、confirm 和 prompt
175         'no-alert': 2,
176         // 禁止使用 Array 構造函數
177         'no-array-constructor': 0,
178         // 不允許await在循環體內使用。
179         'no-await-in-loop': 0,
180         // 禁用按位運算符
181         'no-bitwise': 1,
182         // 不允許調用和構造Buffer()構造函數。
183         'no-buffer-constructor': 0,
184         // 禁用 arguments.caller 或 arguments.callee
185         'no-caller': 2,
186         // 不允許在 case 子句中使用詞法聲明
187         'no-case-declarations': 0,
188         // 不允許 catch 子句的參數與外層作用域中的變量同名
189         'no-catch-shadow': 2,
190         // 禁止修改類聲明的變量
191         'no-class-assign': 2,
192         // 檢測對象文字中的尾隨逗號。因此,只要遇到對象字面上的尾隨逗號,就會發出警告。
193         // 'no-comma-dangle': 2,
194         // 針對試圖與-0進行比較的代碼發出警告,因為這不會按預期工作。也就是說,像x === -0這樣的代碼將通過+0和-0。作者可能打算 Object.is(x,-0)。
195         'no-compare-neg-zero': 2,
196         // 禁止條件表達式中出現賦值操作符
197         'no-cond-assign': 2,
198         // 不允許箭頭功能,在那里他們可以混淆的比較
199         'no-confusing-arrow': 0,
200         // 禁用 console
201         'no-console': 0,
202         // 禁止修改 const 聲明的變量
203         'no-const-assign': 2,
204         // 禁止在條件中使用常量表達式
205         // if (false) {
206         // doSomethingUnfinished();
207         // } //cuowu
208         'no-constant-condition': 2,
209         // 禁用 continue 語句
210         'no-continue': 0,
211         // 禁止在正則表達式中使用控制字符 :new RegExp('\x1f')
212         'no-control-regex': 0,
213         // 禁用 debugger
214         'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
215         // 禁止刪除變量
216         'no-delete-var': 2,
217         // 禁止除法操作符顯式的出現在正則表達式開始的位置
218         'no-div-regex': 1,
219         // 禁止 function 定義中出現重名參數
220         'no-dupe-args': 2,
221         // 禁止類成員中出現重復的名稱
222         'no-dupe-class-members': 2,
223         // 禁止對象字面量中出現重復的 key
224         'no-dupe-keys': 2,
225         // 禁止重復的 case 標簽
226         'no-duplicate-case': 2,
227         // 不允許復制模塊的進口
228         'no-duplicate-imports': 2,
229         // 禁止 if 語句中有 return 之后有 else
230         'no-else-return': 0,
231         // 禁止空語句塊
232         'no-empty': 2,
233         // 禁止在正則表達式中使用空字符集 (/^abc[]/)
234         'no-empty-character-class': 2,
235         // 禁止出現空函數.如果一個函數包含了一條注釋,它將不會被認為有問題。
236         'no-empty-function': 0,
237         // 禁止使用空解構模式no-empty-pattern
238         'no-empty-pattern': 2,
239         // 禁止在沒有類型檢查操作符的情況下與 null 進行比較
240         'no-eq-null': 2,
241         // 禁用 eval()
242         'no-eval': 2,
243         // 禁止對 catch 子句的參數重新賦值
244         'no-ex-assign': 2,
245         // 禁止擴展原生類型
246         'no-extend-native': 0,
247         // 禁止不必要的 .bind() 調用
248         'no-extra-bind': 0,
249         // 禁止不必要的布爾轉換
250         'no-extra-boolean-cast': 1,
251         // 禁用不必要的標簽
252         'no-extra-label: ': 0,
253         // 禁止不必要的括號 //(a * b) + c;//報錯
254         'no-extra-parens': 0,
255         // 禁止不必要的分號
256         'no-extra-semi': 0,
257         // 禁止 case 語句落空
258         'no-fallthrough': 0,
259         // 禁止數字字面量中使用前導和末尾小數點
260         'no-floating-decimal': 2,
261         // 禁止對 function 聲明重新賦值
262         'no-func-assign': 2,
263         // 此規則不允許修改只讀全局變量。
264         'no-global-assign': 2,
265         // 禁止使用短符號進行類型轉換(!!fOO)
266         'no-implicit-coercion': 2,
267         // 禁止在全局范圍內使用 var 和命名的 function 聲明
268         'no-implicit-globals': 0,
269         // 禁止使用類似 eval() 的方法
270         'no-implied-eval': 2,
271         // 禁止在代碼行后使用內聯注釋
272         'no-inline-comments': 0,
273         // 禁止在嵌套的塊中出現 function 或 var 聲明
274         'no-inner-declarations': [2,'both'],
275         // 禁止 RegExp 構造函數中無效的正則表達式字符串
276         'no-invalid-regexp': 2,
277         // 禁止 this 關鍵字出現在類和類對象之外
278         'no-invalid-this': 0,
279         // 禁止在字符串和注釋之外不規則的空白
280         'no-irregular-whitespace': 2,
281         // 禁用 __iterator__ 屬性
282         'no-iterator': 2,
283         // 不允許標簽與變量同名
284         'no-label-var': 2,
285         // 禁用標簽語句
286         'no-labels': 2,
287         // 禁用不必要的嵌套塊
288         'no-lone-blocks': 2,
289         // 禁止 if 作為唯一的語句出現在 else 語句中
290         'no-lonely-if': 2,
291         // 禁止在循環中出現 function 聲明和表達式
292         'no-loop-func': 1,
293         // 禁用魔術數字(3.14什么的用常量代替)
294         'no-magic-numbers': 0,
295         // 禁止混合使用不同的操作符
296         'no-mixed-operators': 2,
297         // 禁止混合常規 var 聲明和 require 調用
298         'no-mixed-requires': 1,
299         // 不允許空格和 tab 混合縮進
300         'no-mixed-spaces-and-tabs': 2,
301         // 不允許在單個語句中使用多個分配。a = b = c = d;
302         'no-multi-assign': 2,
303         // 禁止使用多個空格
304         'no-multi-spaces': 2,
305         // 禁止使用多行字符串,在 JavaScript 中,可以在新行之前使用斜線創建多行字符串
306         'no-multi-str': 0,
307         // 不允許多個空行
308         'no-multiple-empty-lines': [2, {'max': 2}],
309         // 不允許否定的表達式
310         'no-negated-condition': 0,
311         // 禁止在 in 表達式中出現否定的左操作數
312         'no-negated-in-lhs': 0,
313         // 不允許使用嵌套的三元表達式 var foo = bar ? baz : qux === quxx ? bing : bam;
314         'no-nested-ternary': 1,
315         // 禁止在非賦值或條件語句中使用 new 操作符
316         'no-new': 1,
317         // 禁止對 Function 對象使用 new 操作符
318         'no-new-func': 1,
319         // 禁止使用 Object 的構造函數
320         'no-new-object': 0,
321         // 禁止調用 require 時使用 new 操作符
322         'no-new-require': 2,
323         // 禁止 Symbol 的構造函數
324         'no-new-symbol': 1,
325         // 禁止對 String,Number 和 Boolean 使用 new 操作符
326         'no-new-wrappers': 0,
327         // 禁止把全局對象 (Math 和 JSON) 作為函數調用 錯誤:var math = Math();
328         'no-obj-calls': 2,
329         // 禁用八進制字面量
330         'no-octal': 2,
331         // 禁止在字符串中使用八進制轉義序列
332         'no-octal-escape': 2,
333         // 不允許對 function 的參數進行重新賦值
334         'no-param-reassign': 2,
335         // 禁止對 __dirname 和 __filename進行字符串連接
336         'no-path-concat': 0,
337         // 禁止使用一元操作符 ++ 和 --
338         'no-plusplus': 0,
339         // 禁用 process.env
340         'no-process-env': 1,
341         // 禁用 process.exit()
342         'no-process-exit': 1,
343         // 禁用 __proto__ 屬性
344         'no-proto': 0,
345         // 禁止直接使用 Object.prototypes 的內置屬性
346         'no-prototype-builtins': 0,
347         // 禁止使用 var 多次聲明同一變量
348         'no-redeclare': 2,
349         // 禁止正則表達式字面量中出現多個空格
350         'no-regex-spaces': 1,
351         // 禁用特定的全局變量
352         'no-restricted-globals': 0,
353         // 允許指定模塊加載時的進口
354         'no-restricted-imports': 0,
355         // 允許你指定你不想在你的應用程序中使用的模塊。
356         'no-restricted-modules': 0,
357         // 對象上的某些屬性可能在代碼庫中被禁止。這對於取消API或限制模塊方法的使用很有用。例如,您可能希望使用不允許describe.only使用摩卡或者告訴人們使用時Object.assign代替_.extend。
358         'no-restricted-properties': 0,
359         // 禁止使用特定的語法
360         'no-restricted-syntax': 0,
361         // 禁用指定的通過 require 加載的模塊
362         'no-return-assign': 0,
363         // 禁止 return await ;這個規則旨在防止由於缺乏對async function語義的理解而導致的可能的常見性能危害。
364         'no-return-await': 2,
365         // 禁止使用 javascript: url
366         'no-script-url': 0,
367         // 禁止自我賦值
368         'no-self-assign': 2,
369         // 禁止自身比較
370         'no-self-compare': 2,
371         // 禁用逗號操作符
372         'no-sequences': 2,
373         // 禁止 var 聲明 與外層作用域的變量同名
374         'no-shadow': 0,
375         // 禁止覆蓋受限制的標識符
376         'no-shadow-restricted-names': 2,
377         // 禁用稀疏數組
378         'no-sparse-arrays': 2,
379         // 禁用同步方法
380         'no-sync': 0,
381         // 不允許使用制表符
382         'no-tabs': 2,
383         // 警告常規字符串包含看起來像模板字面占位符的內容。"Hello ${name}!";
384         'no-template-curly-in-string': 0,
385         // 不允許使用三元操作符
386         'no-ternary': 0,
387         // 禁止在構造函數中,在調用 super() 之前使用 this 或 super
388         'no-this-before-super': 2,
389         // 禁止拋出非異常字面量
390         'no-throw-literal': 2,
391         // 禁用行尾空格
392         'no-trailing-spaces': 2,
393         // 禁用未聲明的變量,除非它們在 /*global */ 注釋中被提到
394         'no-undef': 2,
395         // 禁止將變量初始化為 undefined
396         'no-undef-init': 2,
397         // 禁止將 undefined 作為標識符
398         'no-undefined': 0,
399         // 禁止標識符中有懸空下划線_bar
400         'no-underscore-dangle': 0,
401         // 禁止出現令人困惑的多行表達式
402         'no-unexpected-multiline': 0,
403         // 禁用一成不變的循環條件
404         'no-unmodified-loop-condition': 2,
405         // 禁止可以在有更簡單的可替代的表達式時使用三元操作符
406         'no-unneeded-ternary': 0,
407         // 禁止在return、throw、continue 和 break語句之后出現不可達代碼
408         /*
409         function foo() {
410         return true;
411         console.log('done');
412         }//錯誤
413         */
414         'no-unreachable': 2,
415         // 禁止在 finally 語句塊中出現控制流語句
416         'no-unsafe-finally': 0,
417         // 不允許否定關系運算符的左操作數 disallow negating the left operand of relational operators
418         'no-unsafe-negation': 2,
419         // 禁止出現未使用過的表達式
420         'no-unused-expressions': 2,
421         // 禁用未使用過的標簽
422         'no-unused-labels': 2,
423         // 禁止出現未使用過的變量
424         'no-unused-vars': 2,
425         // 不允許在變量定義之前使用它們
426         'no-use-before-define': 2,
427         // 禁止不必要的 .call() 和 .apply()
428         'no-useless-call': 2,
429         // 禁止不必要的計算性能鍵對象的文字
430         'no-useless-computed-key': 2,
431         // 禁止不必要的字符串字面量或模板字面量的連接
432         'no-useless-concat': 2,
433         // ES2015 會提供默認的類構造函數。因此,沒有必要提供一個空構造函數或一個簡單地委托給它的父類的構造函數,
434         'no-useless-constructor': 2,
435         // 禁用不必要的轉義字符
436         'no-useless-escape': 0,
437         // 不允許將導入、導出和解構分配重命名為相同的名稱。
438         'no-useless-rename': 2,
439         // 多余的return語句。
440         'no-useless-return': 2,
441         // 要求使用 let 或 const 而不是 var
442         'no-var': 2,
443         // 禁用 void 操作符
444         'no-void': 2,
445         // 禁止在注釋中使用特定的警告術語
446         'no-warning-comments': 0,
447         // 禁止屬性前有空白
448         'no-whitespace-before-property': 2,
449         // 禁用 with 語句
450         'no-with': 1,
451         // 當寫if,else,while,do-while,和for語句,身體部分可以是單個語句而不是塊。為這些單一語句強制執行一個一致的位置會很有用。
452         'nonblock-statement-body-position': 1,
453         // 強制花括號內換行符的一致性
454         'object-curly-newline': 0,
455         // 強制在花括號中使用一致的空格
456         'object-curly-spacing': 2,
457         // 強制將對象的屬性放在不同的行上
458         'object-property-newline': 0,
459         // 要求或禁止對象字面量中方法和屬性使用簡寫語法
460         'object-shorthand': 2,
461         // 強制函數中的變量要么一起聲明要么分開聲明
462         'one-var': 0,
463         // 要求或禁止在 var 聲明周圍換行
464         'one-var-declaration-per-line': 0,
465         // 要求或禁止在可能的情況下要求使用簡化的賦值操作符
466         'operator-assignment': 0,
467         // 強制操作符使用一致的換行符
468         'operator-linebreak': 0,
469         // 要求或禁止塊內填充
470         'padded-blocks': 0,
471         // 所有return語句之前需要空行,如換行前換行符規則。
472         'padding-line-between-statements': 0,
473         // 要求使用箭頭函數作為回調
474         'prefer-arrow-callback': 0,
475         // 要求使用 const 聲明那些聲明后不再被修改的變量
476         'prefer-const': 2,
477         // 采用兩組配置對象。第一個對象參數決定了規則適用的解構類型
478         'prefer-destructuring': 0,
479         // 禁止調用parseInt()或Number.parseInt()使用兩個參數調用:一個字符串; 和2(二進制),8(八進制)或16(十六進制)的基數選項。
480         'prefer-numeric-literals': 2,
481         // 確保承諾只被Error對象拒絕。
482         'prefer-promise-reject-errors': 0,
483         // 要求在合適的地方使用 Reflect 方法
484         'prefer-reflect': 0,
485         // Suggest using the rest parameters instead of arguments
486         'prefer-rest-params': 2,
487         // 要求使用擴展運算符而非 .apply()
488         'prefer-spread': 2,
489         // 要求使用模板字面量而非字符串連接
490         'prefer-template': 1,
491         // 要求對象字面量屬性名稱用引號括起來
492         'quote-props': 0,
493         // 強制使用一致的反勾號、雙引號或單引號
494         'quotes': 0,
495         // 強制在parseInt()使用基數參數
496         'radix': 0,
497         // 異步函數必須具有await表達式
498         'require-await': 2,
499         // 要求使用 JSDoc 注釋
500         'require-jsdoc': 0,
501         // 要求generator 函數內有 yield
502         'require-yield': 2,
503         // enforce spacing between rest and spread operators and their expressions
504         'rest-spread-spacing': 0,
505         // 要求或禁止使用分號而不是 ASI(這個才是控制行尾部分號的,)
506         'semi': 0,
507         // 強制分號之前和之后使用一致的空格
508         'semi-spacing': 0,
509         // 強制分號位於配置的位置。
510         'semi-style': 0,
511         // 強制模塊內的 import 排序
512         'sort-imports': 0,
513         // 所有屬性定義並驗證所有變量是按字母順序排序的。
514         'sort-keys': 0,
515         // 要求同一個聲明塊中的變量按順序排列
516         'sort-vars': 0,
517         // 強制在塊之前使用一致的空格
518         'space-before-blocks': [2,'always'],
519         // 強制在 function的左括號之前使用一致的空格
520         'space-before-function-paren': [2,'always'],
521         // 強制在圓括號內使用一致的空格
522         'space-in-parens': [2,'never'],
523         // 要求操作符周圍有空格
524         'space-infix-ops': 2,
525         // 強制在一元操作符前后使用一致的空格
526         'space-unary-ops': 2,
527         // 強制在注釋中 // 或 /* 使用一致的空格
528         'spaced-comment': 0,
529         // 要求或禁止使用嚴格模式指令
530         'strict': 0,
531         // switch語句內的空格
532         'switch-colon-spacing': 2,
533         // var foo = Symbol("some description"); 一定要有描述
534         'symbol-description': 2,
535         // 要求或禁止模板字符串中的嵌入表達式周圍空格的使用
536         'template-curly-spacing': [2, 'never'],
537         // 模板標簽函數與其模板文字之間是否有空格
538         'template-tag-spacing': 0,
539         // 要求或禁止 Unicode BOM
540         'unicode-bom': 0,
541         // 不允許比較'NaN'。判斷數字是否是NaN,得用isNaN
542         'use-isnan': 2,
543         // 強制使用有效的 JSDoc 注釋
544         'valid-jsdoc': 0,
545         // 強制 typeof 表達式與有效的字符串進行比較
546         // typeof foo === 'undefimed' 錯誤
547         'valid-typeof': 2,
548         // 要求所有的 var 聲明出現在它們所在的作用域頂部
549         'vars-on-top': 2,
550         // 要求 IIFE 使用括號括起來
551         'wrap-iife': 0,
552         // 要求正則表達式被括號括起來
553         'wrap-regex': 0,
554         // 強制在 yield* 表達式中 * 周圍使用空格
555         'yield-star-spacing': 2,
556         // 要求或禁止 “Yoda” 條件
557         'yoda': 0,
558     },
559     globals: {
560         "AMap":"AMap",
561     },
562 }

 

采用:https://www.cnblogs.com/fengyingYZ/p/10369703.html的信息


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM