最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

給vue項(xiàng)目添加ESLint的詳細(xì)步驟

 更新時(shí)間:2017年09月29日 14:26:29   作者:hahazexia  
本篇文章主要介紹了給vue項(xiàng)目添加ESLint的詳細(xì)步驟,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

eslint配置方式有兩種:

1.注釋配置:使用js注釋來(lái)直接嵌入ESLint配置信息到一個(gè)文件里

2.配置文件:使用一個(gè)js,JSON或者YAML文件來(lái)給整個(gè)目錄和它的子目錄指定配置信息。這些配置可以寫在一個(gè)文件名為.eslintrc.*的文件或者在package.json文件里的eslintConfig項(xiàng)里,這兩種方式ESLint都會(huì)自動(dòng)尋找然后讀取,或者你也可以在命令行里指定一個(gè)配置文件。

有幾種東西是可以配置的:

  • 環(huán)境:你的腳本會(huì)在哪種環(huán)境下運(yùn)行。每個(gè)環(huán)境帶來(lái)了一組特定的預(yù)定義的全局變量。
  • 全局變量:腳本運(yùn)行期間會(huì)訪問(wèn)額外的全局變量。
  • 規(guī)則:使用那些規(guī)則,并且規(guī)則的等級(jí)是多少。

我們這里使用配置文件.eslintrc.js來(lái)配置,它導(dǎo)出一個(gè)模塊供ESLint識(shí)別。

// http://eslint.org/docs/user-guide/configuring

module.exports = {
 root: true,
 parser: 'babel-eslint',//解析器,這里我們使用babel-eslint
 parserOptions: {
  sourceType: 'module'//類型為module,因?yàn)榇a使用了使用了ECMAScript模塊
 },
 env: {
  browser: true,//預(yù)定義的全局變量,這里是瀏覽器環(huán)境
 },
 // https://github.com/feross/standard/blob/master/RULES.md#javascript-standard-style
 //extends: 'standard', //擴(kuò)展,可以通過(guò)字符串或者一個(gè)數(shù)組來(lái)擴(kuò)展規(guī)則
 // required to lint *.vue files
 plugins: [
  'html' //插件,此插件用于識(shí)別文件中的js代碼,沒有MIME類型標(biāo)識(shí)沒有script標(biāo)簽也可以識(shí)別到,因此拿來(lái)識(shí)別.vue文件中的js代碼
 ],
 // add your custom rules here
 'rules': {
  //這里寫自定義規(guī)則
 }
}

ESLint的規(guī)則有三種級(jí)別:

  • "off"或者0,不啟用這個(gè)規(guī)則
  • "warn"或者1,出現(xiàn)問(wèn)題會(huì)有警告
  • "error"或者2,出現(xiàn)問(wèn)題會(huì)報(bào)錯(cuò)

有時(shí)候代碼里有些特殊情況需要我們?cè)谀骋恍谢蛘吣硯仔嘘P(guān)閉ESLint檢測(cè),可以使用注釋:

下面的代碼會(huì)關(guān)閉所有規(guī)則

/* eslint-disable */

alert('foo');

/* eslint-enable */

下面的代碼會(huì)關(guān)閉某一行的所有規(guī)則

alert('foo'); // eslint-disable-line

// eslint-disable-next-line
alert('foo');

下面的代碼在某一行關(guān)閉指定的規(guī)則

alert('foo'); // eslint-disable-line no-alert

// eslint-disable-next-line no-alert
alert('foo');

常用規(guī)則:

規(guī)則的細(xì)節(jié)請(qǐng)到ESLint官方網(wǎng)站查看http://eslint.org/docs/rules/

'rules': {
   "comma-dangle": ["error", "never"], //是否允許對(duì)象中出現(xiàn)結(jié)尾逗號(hào)
   "no-cond-assign": 2, //條件語(yǔ)句的條件中不允許出現(xiàn)賦值運(yùn)算符
   "no-console": 2, //不允許出現(xiàn)console語(yǔ)句
   "no-constant-condition": 2, //條件語(yǔ)句的條件中不允許出現(xiàn)恒定不變的量
   "no-control-regex": 2, //正則表達(dá)式中不允許出現(xiàn)控制字符
   "no-debugger": 2, //不允許出現(xiàn)debugger語(yǔ)句
   "no-dupe-args": 2, //函數(shù)定義的時(shí)候不允許出現(xiàn)重復(fù)的參數(shù)
   "no-dupe-keys": 2, //對(duì)象中不允許出現(xiàn)重復(fù)的鍵
   "no-duplicate-case": 2, //switch語(yǔ)句中不允許出現(xiàn)重復(fù)的case標(biāo)簽
   "no-empty": 2, //不允許出現(xiàn)空的代碼塊
   "no-empty-character-class": 2, //正則表達(dá)式中不允許出現(xiàn)空的字符組
   "no-ex-assign": 2, //在try catch語(yǔ)句中不允許重新分配異常變量
   "no-extra-boolean-cast": 2, //不允許出現(xiàn)不必要的布爾值轉(zhuǎn)換
   "no-extra-parens": 0, //不允許出現(xiàn)不必要的圓括號(hào)
   "no-extra-semi": 2, //不允許出現(xiàn)不必要的分號(hào)
   "no-func-assign": 2, //不允許重新分配函數(shù)聲明
   "no-inner-declarations": ["error", "functions"], //不允許在嵌套代碼塊里聲明函數(shù)
   "no-invalid-regexp": 2, //不允許在RegExp構(gòu)造函數(shù)里出現(xiàn)無(wú)效的正則表達(dá)式
   "no-irregular-whitespace": 2, //不允許出現(xiàn)不規(guī)則的空格
   "no-negated-in-lhs": 2, //不允許在in表達(dá)式語(yǔ)句中對(duì)最左邊的運(yùn)算數(shù)使用取反操作
   "no-obj-calls": 2, //不允許把全局對(duì)象屬性當(dāng)做函數(shù)來(lái)調(diào)用
   "no-regex-spaces": 2, //正則表達(dá)式中不允許出現(xiàn)多個(gè)連續(xù)空格
   "quote-props": 2, //對(duì)象中的屬性名是否需要用引號(hào)引起來(lái)
   "no-sparse-arrays": 2, //數(shù)組中不允許出現(xiàn)空位置
   "no-unreachable": 2, //在return,throw,continue,break語(yǔ)句后不允許出現(xiàn)不可能到達(dá)的語(yǔ)句
   "use-isnan": 2, //要求檢查NaN的時(shí)候使用isNaN()
   "valid-jsdoc": ["error", {
     "requireReturn": false,
     "requireParamDescription": false,
     "requireReturnDescription": true
   }], //強(qiáng)制JSDoc注釋
   "valid-typeof": ["error", {
     "requireStringLiterals": true
   }], //在使用typeof表達(dá)式比較的時(shí)候強(qiáng)制使用有效的字符串
   "block-scoped-var": 2, //將變量聲明放在合適的代碼塊里
   "complexity": 0, //限制條件語(yǔ)句的復(fù)雜度
   "consistent-return": 2, //無(wú)論有沒有返回值都強(qiáng)制要求return語(yǔ)句返回一個(gè)值
   "curly": ["error", "all"], //強(qiáng)制使用花括號(hào)的風(fēng)格
   "default-case": 0, //在switch語(yǔ)句中需要有default語(yǔ)句
   "dot-notation": ["error", {"allowKeywords": false, "allowPattern": ""}], //獲取對(duì)象屬性的時(shí)候使用點(diǎn)號(hào)
   "eqeqeq": ["error", "smart"], //比較的時(shí)候使用嚴(yán)格等于
   "no-alert": 1, //不允許使用alert,confirm,prompt語(yǔ)句
   "no-caller": 2, //不允許使用arguments.callee和arguments.caller屬性
   "guard-for-in": 0, //監(jiān)視for in循環(huán),防止出現(xiàn)不可預(yù)料的情況
   "no-div-regex": 2, //不能使用看起來(lái)像除法的正則表達(dá)式
   "no-else-return": 0, //如果if語(yǔ)句有return,else里的return不用放在else里
   "no-labels": ["error", {
     "allowLoop": false,
     "allowSwitch": false
   }], //不允許標(biāo)簽語(yǔ)句
   "no-eq-null": 2, //不允許對(duì)null用==或者!=
   "no-eval": 2, //不允許使用eval()
   "no-extend-native": 2, //不允許擴(kuò)展原生對(duì)象
   "no-extra-bind": 2, //不允許不必要的函數(shù)綁定
   "no-fallthrough": 2, //不允許switch按順序全部執(zhí)行所有case
   "no-floating-decimal": 2, //不允許浮點(diǎn)數(shù)缺失數(shù)字
   "no-implied-eval": 2, //不允許使用隱式eval()
   "no-iterator": 2, //不允許使用__iterator__屬性
   "no-lone-blocks": 2, //不允許不必要的嵌套代碼塊
   "no-loop-func": 2, //不允許在循環(huán)語(yǔ)句中進(jìn)行函數(shù)聲明
   "no-multi-spaces": 2, //不允許出現(xiàn)多余的空格
   "no-multi-str": 2, //不允許用\來(lái)讓字符串換行
   "no-global-assign": 2, //不允許重新分配原生對(duì)象
   "no-new": 2, //不允許new一個(gè)實(shí)例后不賦值或者不比較
   "no-new-func": 2, //不允許使用new Function
   "no-new-wrappers": 2, //不允許使用new String,Number和Boolean對(duì)象
   "no-octal": 2, //不允許使用八進(jìn)制字面值
   "no-octal-escape": 2, //不允許使用八進(jìn)制轉(zhuǎn)義序列
   "no-param-reassign": 0, //不允許重新分配函數(shù)參數(shù)"no-proto": 2, //不允許使用__proto__屬性
   "no-redeclare": 2, //不允許變量重復(fù)聲明
   "no-return-assign": 2, //不允許在return語(yǔ)句中使用分配語(yǔ)句
   "no-script-url": 2, //不允許使用javascript:void(0)
   "no-self-compare": 2, //不允許自己和自己比較
   "no-sequences": 2, //不允許使用逗號(hào)表達(dá)式
   "no-throw-literal": 2, //不允許拋出字面量錯(cuò)誤 throw "error"
   "no-unused-expressions": 2, //不允許無(wú)用的表達(dá)式
   "no-void": 2, //不允許void操作符
   "no-warning-comments": [1, {"terms": ["todo", "fixme", "any other term"]}], //不允許警告?zhèn)渥?
   "no-with": 2, //不允許使用with語(yǔ)句
   "radix": 1, //使用parseInt時(shí)強(qiáng)制使用基數(shù)來(lái)指定是十進(jìn)制還是其他進(jìn)制
   "vars-on-top": 0, //var必須放在作用域頂部
   "wrap-iife": [2, "any"], //立即執(zhí)行表達(dá)式的括號(hào)風(fēng)格
   "yoda": [2, "never", {"exceptRange": true}], //不允許在if條件中使用yoda條件
   "strict": [2, "function"], //使用嚴(yán)格模式
   "no-catch-shadow": 2, //不允許try catch語(yǔ)句接受的err變量與外部變量重名"no-delete-var": 2, //不允許使用delete操作符
   "no-label-var": 2, //不允許標(biāo)簽和變量同名
   "no-shadow": 2, //外部作用域中的變量不能與它所包含的作用域中的變量或參數(shù)同名
   "no-shadow-restricted-names": 2, //js關(guān)鍵字和保留字不能作為函數(shù)名或者變量名
   "no-undef": 2, //不允許未聲明的變量
   "no-undef-init": 2, //不允許初始化變量時(shí)給變量賦值undefined
   "no-undefined": 2, //不允許把undefined當(dāng)做標(biāo)識(shí)符使用
   "no-unused-vars": [2, {"vars": "all", "args": "after-used"}], //不允許有聲明后未使用的變量或者參數(shù)
   "no-use-before-define": [2, "nofunc"], //不允許在未定義之前就使用變量"indent": 2, //強(qiáng)制一致的縮進(jìn)風(fēng)格
   "brace-style": [2, "1tbs", { "allowSingleLine": false}], //大括號(hào)風(fēng)格
   "camelcase": [2, {"properties": "never"}], //強(qiáng)制駝峰命名規(guī)則
   "comma-style": [2, "last"], //逗號(hào)風(fēng)格
   "consistent-this": [0, "self"], //當(dāng)獲取當(dāng)前環(huán)境的this是用一樣的風(fēng)格
   "eol-last": 2, //文件以換行符結(jié)束
   "func-names": 0, //函數(shù)表達(dá)式必須有名字
   "func-style": 0, //函數(shù)風(fēng)格,規(guī)定只能使用函數(shù)聲明或者函數(shù)表達(dá)式
   "key-spacing": [2, {"beforeColon": false, "afterColon": true}], //對(duì)象字面量中冒號(hào)的前后空格
   "max-nested-callbacks": 0, //回調(diào)嵌套深度
   "new-cap": [2, {"newIsCap": true, "capIsNew": false}], //構(gòu)造函數(shù)名字首字母要大寫
   "new-parens": 2, //new時(shí)構(gòu)造函數(shù)必須有小括號(hào)
   "newline-after-var": 0, //變量聲明后必須空一行
   "no-array-constructor": 2, //不允許使用數(shù)組構(gòu)造器
   "no-inline-comments": 0, //不允許行內(nèi)注釋
   "no-lonely-if": 0, //不允許else語(yǔ)句內(nèi)只有if語(yǔ)句
   "no-mixed-spaces-and-tabs": [2, "smart-tabs"], //不允許混用tab和空格
   "no-multiple-empty-lines": [2, {"max": 2}], //空行最多不能超過(guò)兩行
   "no-nested-ternary": 2, //不允許使用嵌套的三目運(yùn)算符
   "no-new-object": 2, //禁止使用new Object()
   "fun-call-spacing": 2, //函數(shù)調(diào)用時(shí),函數(shù)名與()之間不能有空格
   "no-ternary": 0, //不允許使用三目運(yùn)算符
   "no-trailing-spaces": 2, //一行最后不允許有空格
   "no-underscore-dangle": 2, //不允許標(biāo)識(shí)符以下劃線開頭
   "no-extra-parens": 0, //不允許出現(xiàn)多余的括號(hào)
   "one-var": 0, //強(qiáng)制變量聲明放在一起
   "operator-assignment": 0, //賦值運(yùn)算符的風(fēng)格
   "padded-blocks": [2, "never"], //塊內(nèi)行首行尾是否空行
   "quote-props": 0, //對(duì)象字面量中屬性名加引號(hào)
   "quotes": [1, "single", "avoid-escape"], //引號(hào)風(fēng)格
   "semi": [2, "always"], //強(qiáng)制語(yǔ)句分號(hào)結(jié)尾
   "semi-spacing": [2, {"before": false, "after": true}], //分后前后空格
   "sort-vars": 0, //變量聲明時(shí)排序
   "space-before-blocks": [2, "always"], //塊前的空格
   "space-before-function-paren": [2, {"anonymous": "always", "named": "never"}], //函數(shù)定義時(shí)括號(hào)前的空格
   "space-infix-ops": [2, {"int32Hint": true}], //操作符周圍的空格
   "keyword-spacing": 2, //關(guān)鍵字前后的空格
   "space-unary-ops": [2, { "words": true, "nonwords": false}], //一元運(yùn)算符前后不要加空格
   "wrap-regex": 2, //正則表達(dá)式字面量用括號(hào)括起來(lái)
   "no-var": 0, //使用let和const代替var
   "generator-star-spacing": [2, "both"], //生成器函數(shù)前后空格
   "max-depth": 0, //嵌套塊深度
   "max-len": 0, //一行最大長(zhǎng)度,單位為字符
   "max-params": 0, //函數(shù)最多能有多少個(gè)參數(shù)
   "max-statements": 0, //函數(shù)內(nèi)最多有幾個(gè)聲明
   "no-bitwise": 0, //不允許使用位運(yùn)算符
   "no-plusplus": 0 //不允許使用++ --運(yùn)算符
 }

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue-router之解決addRoutes使用遇到的坑

    vue-router之解決addRoutes使用遇到的坑

    這篇文章主要介紹了vue-router之解決addRoutes使用遇到的坑,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-07-07
  • vue中如何獲取當(dāng)前路由地址

    vue中如何獲取當(dāng)前路由地址

    這篇文章主要介紹了vue中如何獲取當(dāng)前路由地址,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 基于Vue3實(shí)現(xiàn)列表虛擬滾動(dòng)效果

    基于Vue3實(shí)現(xiàn)列表虛擬滾動(dòng)效果

    這篇文章主要為大家介紹了如何利用Vue3實(shí)現(xiàn)列表虛擬滾動(dòng)效果,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)或工作有一定價(jià)值,需要的可以參考一下
    2022-04-04
  • vue實(shí)現(xiàn)動(dòng)態(tài)列表點(diǎn)擊各行換色的方法

    vue實(shí)現(xiàn)動(dòng)態(tài)列表點(diǎn)擊各行換色的方法

    今天小編就為大家分享一篇vue實(shí)現(xiàn)動(dòng)態(tài)列表點(diǎn)擊各行換色的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • 一文詳解如何在vue中實(shí)現(xiàn)文件預(yù)覽功能

    一文詳解如何在vue中實(shí)現(xiàn)文件預(yù)覽功能

    很多Vue項(xiàng)目中都需要PDF文件預(yù)覽功能,比如合同ERP,銷售CRM,內(nèi)部文檔CMS管理系統(tǒng),內(nèi)置PDF文件在線預(yù)覽功能,下面這篇文章主要給大家介紹了關(guān)于如何在vue中實(shí)現(xiàn)文件預(yù)覽功能的相關(guān)資料,需要的朋友可以參考下
    2022-10-10
  • VUE實(shí)現(xiàn)一個(gè)Flappy Bird游戲的示例代碼

    VUE實(shí)現(xiàn)一個(gè)Flappy Bird游戲的示例代碼

    這篇文章主要介紹了VUE實(shí)現(xiàn)一個(gè)Flappy Bird的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • vue-router路由懶加載及實(shí)現(xiàn)的3種方式

    vue-router路由懶加載及實(shí)現(xiàn)的3種方式

    這篇文章主要給大家介紹了關(guān)于vue-router路由懶加載及實(shí)現(xiàn)的3種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • 利用Vue3 (一)創(chuàng)建Vue CLI 項(xiàng)目

    利用Vue3 (一)創(chuàng)建Vue CLI 項(xiàng)目

    這篇文章主要介紹利用Vue3 創(chuàng)建Vue CLI 項(xiàng)目,下面文章內(nèi)容附有官方文檔鏈接,安裝過(guò)程,需要的可以參考一下
    2021-10-10
  • vue中keep-alive的用法及問(wèn)題描述

    vue中keep-alive的用法及問(wèn)題描述

    這篇文章主要介紹了vue中keep-alive的用法及問(wèn)題描述,本文給大家介紹的非常詳細(xì),具有一定的參考解決價(jià)值,需要的朋友可以參考下
    2018-05-05
  • Vue3中的ref和reactive響應(yīng)式原理解析

    Vue3中的ref和reactive響應(yīng)式原理解析

    這篇文章主要介紹了Vue3中的ref和reactive響應(yīng)式,本節(jié)主要介紹了響應(yīng)式變量和對(duì)象,以及變量和對(duì)象在響應(yīng)式和非響應(yīng)式之間的轉(zhuǎn)換,需要的朋友可以參考下
    2022-08-08

最新評(píng)論

卢湾区| 大宁县| 台湾省| 绥芬河市| 虞城县| 山阴县| 肃北| 阿巴嘎旗| 宣恩县| 宾川县| 泽州县| 建宁县| 灌云县| 宁都县| 来安县| 彭泽县| 布尔津县| 方城县| 松原市| 广宁县| 邳州市| 博野县| 古丈县| 祥云县| 固镇县| 恩施市| 龙泉市| 巩留县| 桐梓县| 饶河县| 靖西县| 天水市| 修文县| 承德市| 新疆| 安龙县| 昌宁县| 繁昌县| 雷波县| 丹寨县| 武定县|