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

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

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

正文

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

1.安裝以下eslint插件

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

(1)eslint

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

(2)@babel/eslint-parser

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

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

(3)eslint-plugin-vue

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

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

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

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

(5)@vue/cli-plugin-eslint

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

1.1 .eslintrc.js文件配置

module.exports = {
  root: true, // 在根目錄下尋找.eslintrc.js文件,如果當(dāng)前工作區(qū)打開的項目不是在根目錄,則查找.eslintrc.js文件會失敗,且eslint檢查也不會生效
  env: {
    node: true
  },
  extends: [
    'plugin:vue/essential',
    'eslint:recommended',
    'plugin:prettier/recommended', // 沖突時使用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', // 不校驗組件名
    "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 使用兩個空格
    endOfLine: "auto", // 保持現(xiàn)有的行尾
    useTabs: false, // 不使用制表符縮進(jìn),使用空格縮進(jìn)
    semi: true, // 代碼需要分號結(jié)尾
    singleQuote: true, // 單引號
    bracketSpacing: true, // 對象左右兩側(cè)需要空格
    jsxBracketSameLine: false, // html 關(guān)閉標(biāo)簽換行
    arrowParens: 'avoid', // 單參數(shù)的箭頭函數(shù)參數(shù)不需要括號
    proseWrap: 'never', // markdown文檔不換行
    trailingComma: 'none' // 結(jié)尾處不加逗號
  }

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工具欄右下角兩個插件的啟用狀態(tài)

(2)setting.json文件的配置

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

5. 啟動項目

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

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

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

第二,因為舊代碼有很多代碼不規(guī)范,為了控制臺清爽,也為了提高啟動速度,需要將vue.config.js中的lintOnSave設(shè)置為false,即運行時不啟用lint

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

相關(guān)文章

  • Vue插槽具體用法及實例分析

    Vue插槽具體用法及實例分析

    本文主要介紹了Vue框架中插槽的使用方法和應(yīng)用場景。通過具體實例分析,詳細(xì)講解了插槽的具體用法,幫助讀者深入理解Vue中插槽的使用和實現(xiàn)方式
    2023-05-05
  • 關(guān)于vue-cli 3配置打包優(yōu)化要點(推薦)

    關(guān)于vue-cli 3配置打包優(yōu)化要點(推薦)

    這篇文章主要介紹了vue-cli 3配置打包優(yōu)化要點,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • element-ui中table組件的toggleRowSelection()方法使用

    element-ui中table組件的toggleRowSelection()方法使用

    這篇文章主要介紹了element-ui中table組件的toggleRowSelection()方法使用,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • vue中的事件加判斷條件如何進(jìn)行選擇性點擊

    vue中的事件加判斷條件如何進(jìn)行選擇性點擊

    這篇文章主要介紹了vue中的事件加判斷條件如何進(jìn)行選擇性點擊方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Vue 2.0 偵聽器 watch屬性代碼詳解

    Vue 2.0 偵聽器 watch屬性代碼詳解

    這篇文章主要介紹了Vue 2.0 偵聽器 watch屬性代碼詳解,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2019-06-06
  • 聊聊Vue.js的template編譯的問題

    聊聊Vue.js的template編譯的問題

    這篇文章主要介紹了聊聊Vue.js的template編譯的問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • Vue+Echarts實現(xiàn)繪制動態(tài)折線圖

    Vue+Echarts實現(xiàn)繪制動態(tài)折線圖

    這篇文章主要為大家詳細(xì)介紹了如何利用Vue和Echarts實現(xiàn)繪制動態(tài)折線圖,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-03-03
  • Vue如何實現(xiàn)自動觸發(fā)功能

    Vue如何實現(xiàn)自動觸發(fā)功能

    這篇文章主要介紹了Vue如何實現(xiàn)自動觸發(fā)功能,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • 記一次Vue.js混入mixin的使用(分權(quán)限管理頁面)

    記一次Vue.js混入mixin的使用(分權(quán)限管理頁面)

    這篇文章主要介紹了記一次Vue.js混入mixin的使用(分權(quán)限管理頁面),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-04-04
  • vue不用window的方式如何刷新當(dāng)前頁面

    vue不用window的方式如何刷新當(dāng)前頁面

    這篇文章主要介紹了vue不用window的方式如何刷新當(dāng)前頁面,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11

最新評論

玉溪市| 玉溪市| 碌曲县| 原平市| 泉州市| 喀喇| 八宿县| 禹城市| 曲周县| 玉门市| 武山县| 武山县| 克什克腾旗| 新密市| 思南县| 东丽区| 张家港市| 屏东县| 台前县| 成武县| 马山县| 大邑县| 大埔县| 皋兰县| 丰都县| 平顶山市| 肇庆市| 临邑县| 瓦房店市| 应用必备| 紫阳县| 溆浦县| 通州区| 信宜市| 金溪县| 卢龙县| 云阳县| 盘山县| 米脂县| 景德镇市| 日喀则市|