欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue2項(xiàng)目增加eslint配置代碼規(guī)范示例

 更新時(shí)間:2022年08月08日 10:56:02   作者:Caroline皮皮  
這篇文章主要為大家介紹了vue2項(xiàng)目增加eslint配置代碼規(guī)范示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

正文

eslint用于代碼檢查,prettier用于代碼格式化,具體操作如下

1.安裝以下eslint插件

安裝以下eslint插件,并增加.eslintrc.js配置文件,.eslintignore配置忽略檢查的文件

(1)eslint

用于檢查和標(biāo)示出ECMAScript/JavaScript代碼規(guī)范問題工具。

(2)@babel/eslint-parser

簡(jiǎn)而言之就是一個(gè)解析器,允許您使用ESLint對(duì)所有有效的Babel代碼進(jìn)行檢查。

ESLint允許使用自定義解析器,當(dāng)使用此插件時(shí),代碼會(huì)被Babel解析器解析,并且生成的AST被轉(zhuǎn)換成一個(gè)ESLint可以理解的符合ESTree的結(jié)構(gòu),所有的位置信息如行列也會(huì)保留,因此可以輕松的追蹤錯(cuò)誤

(3)eslint-plugin-vue

Vue.js的官方ESLint插件,即使用eslint檢查.vue文件的template和script

(4)eslint-config-prettier或者@vue/eslint-config-prettier

當(dāng)prettier與eslint有些規(guī)則沖突時(shí),使用prettier的規(guī)則進(jìn)行覆蓋

其中@vue/cli-plugin-eslint是特別為@vue/cli&create vue setups使用而設(shè)計(jì)的

(5)@vue/cli-plugin-eslint

vue-cli的eslint 插件,檢查和修復(fù)文件

1.1 .eslintrc.js文件配置

module.exports = {
  root: true, // 在根目錄下尋找.eslintrc.js文件,如果當(dāng)前工作區(qū)打開的項(xiàng)目不是在根目錄,則查找.eslintrc.js文件會(huì)失敗,且eslint檢查也不會(huì)生效
  env: {
    node: true
  },
  extends: [
    'plugin:vue/essential',
    'eslint:recommended',
    'plugin:prettier/recommended', // 沖突時(shí)使用prettier的規(guī)則進(jìn)行覆蓋
  ],
  parserOptions: {
    parser: '@babel/eslint-parser'
  },
  rules: {
    'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
    'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
    'vue/multi-word-component-names': 'off', // 不校驗(yàn)組件名
    "vue/no-multiple-template-root": 0, // 不需要使用根元素包裹template的內(nèi)容
  }
};

1.2 .eslintignore文件的配置

node_modules
dist

2. 安裝prettier

安裝prettier,并增加.prettierrc.js文件

代碼格式化工具,通過.prettierrc.js文件進(jìn)行配置代碼規(guī)范 .prettierrc.js相關(guān)配置如下

//配置參照 https://prettier.io/docs/en/options.html
module.exports = {
    tabWidth: 2, // tab 使用兩個(gè)空格
    endOfLine: "auto", // 保持現(xiàn)有的行尾
    useTabs: false, // 不使用制表符縮進(jìn),使用空格縮進(jìn)
    semi: true, // 代碼需要分號(hào)結(jié)尾
    singleQuote: true, // 單引號(hào)
    bracketSpacing: true, // 對(duì)象左右兩側(cè)需要空格
    jsxBracketSameLine: false, // html 關(guān)閉標(biāo)簽換行
    arrowParens: 'avoid', // 單參數(shù)的箭頭函數(shù)參數(shù)不需要括號(hào)
    proseWrap: 'never', // markdown文檔不換行
    trailingComma: 'none' // 結(jié)尾處不加逗號(hào)
  }

3. package.json相關(guān)代碼

"devDependencies": {
  "@babel/eslint-parser": "^7.18.9",
  "@vue/cli-plugin-eslint": "^5.0.8",
  "eslint": "^7.32.0",
  "eslint-config-prettier": "^8.5.0",
  "eslint-plugin-vue": "^8.7.1",
  "prettier": "^2.7.1",
}

4. vscode的配置

(1)配置eslint、prettier插件

vscode工具欄右下角兩個(gè)插件的啟用狀態(tài)

(2)setting.json文件的配置

{
   // 用于保存時(shí)使用進(jìn)行代碼格式化
    "editor.codeActionsOnSave": {
        "source.fixAll": true,
    },
    // 用于vscode右下角工具欄展示eslint標(biāo)識(shí)
    "eslint.alwaysShowStatus": true,
}

5. 啟動(dòng)項(xiàng)目

由于是在老項(xiàng)目中增加eslint規(guī)范,所以要實(shí)現(xiàn)以下兩點(diǎn)

第一,其他開發(fā)伙伴可輕松使用,需參照以下步驟

(1)確保安裝eslint、prettier插件
(2)確保vscode的setting.json文件中的source.fixAll配置為true
(3)刪除本地node_modules
     npm i rimraf
     rimraf node_modules
(4)npm i重新安裝依賴

第二,因?yàn)榕f代碼有很多代碼不規(guī)范,為了控制臺(tái)清爽,也為了提高啟動(dòng)速度,需要將vue.config.js中的lintOnSave設(shè)置為false,即運(yùn)行時(shí)不啟用lint

以上就是代碼規(guī)范配置的全部?jī)?nèi)容了,更多關(guān)于vue2代碼規(guī)范eslint配置的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解vue中點(diǎn)擊空白處隱藏div的實(shí)現(xiàn)(用指令實(shí)現(xiàn))

    詳解vue中點(diǎn)擊空白處隱藏div的實(shí)現(xiàn)(用指令實(shí)現(xiàn))

    本篇文章主要介紹了詳解vue中點(diǎn)擊空白處隱藏div的實(shí)現(xiàn)(用指令實(shí)現(xiàn)),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2018-04-04
  • vue項(xiàng)目使用.env文件配置全局環(huán)境變量的方法

    vue項(xiàng)目使用.env文件配置全局環(huán)境變量的方法

    這篇文章主要介紹了vue項(xiàng)目使用.env文件配置全局環(huán)境變量的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • vue.js實(shí)現(xiàn)簡(jiǎn)易折疊面板

    vue.js實(shí)現(xiàn)簡(jiǎn)易折疊面板

    這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)簡(jiǎn)易折疊面板,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • Vue封裝通過API調(diào)用的組件的方法詳解

    Vue封裝通過API調(diào)用的組件的方法詳解

    在日常業(yè)務(wù)開發(fā)中我們會(huì)經(jīng)常封裝一些業(yè)務(wù)組件,下面這篇文章主要給大家介紹了關(guān)于Vue封裝通過API調(diào)用的組件的方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • 在Vue中使用防抖與節(jié)流,及this指向的問題

    在Vue中使用防抖與節(jié)流,及this指向的問題

    這篇文章主要介紹了在Vue中使用防抖與節(jié)流,及this指向的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • Nuxt.js SSR與權(quán)限驗(yàn)證的實(shí)現(xiàn)

    Nuxt.js SSR與權(quán)限驗(yàn)證的實(shí)現(xiàn)

    這篇文章主要介紹了Nuxt.js SSR與權(quán)限驗(yàn)證的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • Element?UI安裝全過程

    Element?UI安裝全過程

    element?ui?就是基于vue的一個(gè)ui框架,該框架基于vue開發(fā)了很多相關(guān)組件,方便我們快速開發(fā)頁(yè)面,餓了么前端團(tuán)隊(duì)基于vue進(jìn)行開發(fā)并且進(jìn)行了開源?element?ui?中提供全部都是封裝好組件,本文給大家介紹Element?UI安裝全過程,感興趣的朋友一起看看吧
    2024-01-01
  • vant的picker的坑及解決

    vant的picker的坑及解決

    這篇文章主要介紹了vant的picker的坑及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Vue3自定義Hooks函數(shù)的使用詳解

    Vue3自定義Hooks函數(shù)的使用詳解

    vue3 中的 hooks 就是函數(shù)的一種寫法,就是將文件的一些單獨(dú)功能的js代碼進(jìn)行抽離出來(lái)進(jìn)行封裝使用,下面我們就來(lái)看看vue3中自定義Hooks函數(shù)的使用吧
    2023-09-09
  • Vue源碼之關(guān)于vm.$delete()/Vue.use()內(nèi)部原理詳解

    Vue源碼之關(guān)于vm.$delete()/Vue.use()內(nèi)部原理詳解

    這篇文章主要介紹了Vue源碼之關(guān)于vm.$delete()/Vue.use()內(nèi)部原理詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2019-05-05

最新評(píng)論