国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【eslint】eslint 配置 - 以硅谷甄選和大事件項(xiàng)目為例

這篇具有很好參考價(jià)值的文章主要介紹了【eslint】eslint 配置 - 以硅谷甄選和大事件項(xiàng)目為例。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

eslint 配置 - 硅谷甄選

eslint中文官網(wǎng): http://eslint.cn/

插件化的javascript代碼檢測(cè)工具

首先安裝eslint(同時(shí)也安裝了prettier)

pnpm i eslint -D

生成配置文件:.eslint.cjs

npx eslint --init

.eslint.cjs配置文件

module.exports = {
   // 1. 運(yùn)行環(huán)境
    "env": { 
        "browser": true,//瀏覽器端
        "es2021": true,//es2021
    },
    // 2. 規(guī)則繼承
    "extends": [ 
       //全部規(guī)則默認(rèn)是關(guān)閉的,這個(gè)配置項(xiàng)開啟推薦規(guī)則,推薦規(guī)則參照文檔,比如:函數(shù)不能重名、對(duì)象不能出現(xiàn)重復(fù)key
        "eslint:recommended",
        //vue3語法規(guī)則
        "plugin:vue/vue3-essential",
        //ts語法規(guī)則
        "plugin:@typescript-eslint/recommended"
    ],
    // 3. 要為特定類型的文件指定處理器
    "overrides": [
    ],
    // 4. 指定解析器:解析器
    //Esprima 默認(rèn)解析器
    //Babel-ESLint babel解析器
    //@typescript-eslint/parser ts解析器
    "parser": "@typescript-eslint/parser",
    // 5. 指定解析器選項(xiàng)
    "parserOptions": {
        "ecmaVersion": "latest",//校驗(yàn)ECMA最新版本
        "sourceType": "module"http://設(shè)置為"script"(默認(rèn)),或者"module"代碼在ECMAScript模塊中
    },
    // 6. ESLint支持使用第三方插件。在使用插件之前,您必須使用npm安裝它
    //該eslint-plugin-前綴可以從插件名稱被省略
    "plugins": [
        "vue",
        "@typescript-eslint"
    ],
    // 7. eslint規(guī)則
    "rules": {
    }
}

1.1vue3環(huán)境代碼校驗(yàn)插件

# 讓所有與prettier規(guī)則存在沖突的Eslint rules失效,并使用prettier進(jìn)行代碼檢查
"eslint-config-prettier": "^8.6.0",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-node": "^11.1.0",
# 運(yùn)行更漂亮的Eslint,使prettier規(guī)則優(yōu)先級(jí)更高,Eslint優(yōu)先級(jí)低
"eslint-plugin-prettier": "^4.2.1",
# vue.js的Eslint插件(查找vue語法錯(cuò)誤,發(fā)現(xiàn)錯(cuò)誤指令,查找違規(guī)風(fēng)格指南
"eslint-plugin-vue": "^9.9.0",
# 該解析器允許使用Eslint校驗(yàn)所有babel code
"@babel/eslint-parser": "^7.19.1",

安裝指令

pnpm install -D eslint-plugin-import eslint-plugin-vue eslint-plugin-node eslint-plugin-prettier eslint-config-prettier eslint-plugin-node @babel/eslint-parser

1.2修改.eslintrc.cjs配置文件

// @see https://eslint.bootcss.com/docs/rules/

module.exports = {
  env: {
    browser: true,
    es2021: true,
    node: true,
    jest: true,
  },
  /* 指定如何解析語法 */
  parser: 'vue-eslint-parser',
  /** 優(yōu)先級(jí)低于 parse 的語法解析配置 */
  parserOptions: {
    ecmaVersion: 'latest',
    sourceType: 'module',
    parser: '@typescript-eslint/parser',
    jsxPragma: 'React',
    ecmaFeatures: {
      jsx: true,
    },
  },
  /* 繼承已有的規(guī)則 */
  extends: [
    'eslint:recommended',
    'plugin:vue/vue3-essential',
    'plugin:@typescript-eslint/recommended',
    'plugin:prettier/recommended',
  ],
  plugins: ['vue', '@typescript-eslint'],
  /*
   * "off" 或 0    ==>  關(guān)閉規(guī)則
   * "warn" 或 1   ==>  打開的規(guī)則作為警告(不影響代碼執(zhí)行)
   * "error" 或 2  ==>  規(guī)則作為一個(gè)錯(cuò)誤(代碼不能執(zhí)行,界面報(bào)錯(cuò))
   */
  rules: {
    // eslint(https://eslint.bootcss.com/docs/rules/)
    'no-var': 'error', // 要求使用 let 或 const 而不是 var
    'no-multiple-empty-lines': ['warn', { max: 1 }], // 不允許多個(gè)空行
    'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
    'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
    'no-unexpected-multiline': 'error', // 禁止空余的多行
    'no-useless-escape': 'off', // 禁止不必要的轉(zhuǎn)義字符

    // typeScript (https://typescript-eslint.io/rules)
    '@typescript-eslint/no-unused-vars': 'error', // 禁止定義未使用的變量
    '@typescript-eslint/prefer-ts-expect-error': 'error', // 禁止使用 @ts-ignore
    '@typescript-eslint/no-explicit-any': 'off', // 禁止使用 any 類型
    '@typescript-eslint/no-non-null-assertion': 'off',
    '@typescript-eslint/no-namespace': 'off', // 禁止使用自定義 TypeScript 模塊和命名空間。
    '@typescript-eslint/semi': 'off',

    // eslint-plugin-vue (https://eslint.vuejs.org/rules/)
    'vue/multi-word-component-names': 'off', // 要求組件名稱始終為 “-” 鏈接的單詞
    'vue/script-setup-uses-vars': 'error', // 防止<script setup>使用的變量<template>被標(biāo)記為未使用
    'vue/no-mutating-props': 'off', // 不允許組件 prop的改變
    'vue/attribute-hyphenation': 'off', // 對(duì)模板中的自定義組件強(qiáng)制執(zhí)行屬性命名樣式
  },
}

1.3.eslintignore忽略文件

dist
node_modules

1.4運(yùn)行腳本

package.json新增兩個(gè)運(yùn)行腳本

"scripts": {
    "lint": "eslint src",
    "fix": "eslint src --fix",
}

eslint 配置 - 大事件

環(huán)境同步:

  1. 安裝vscode自帶的可安裝插件 ESlint,并用npm在自己的項(xiàng)目中安裝ESlint,配置保存時(shí)自動(dòng)修復(fù)

打開設(shè)置,找到 settings.json,進(jìn)行配置。
【eslint】eslint 配置 - 以硅谷甄選和大事件項(xiàng)目為例,Vue,前端

  1. 禁用 vscode 本身自帶的可安裝插件 Prettier,用npm在自己的項(xiàng)目中安裝Prettier,并關(guān)閉保存自動(dòng)格式化(format on save)
// ESlint插件 + Vscode配置 實(shí)現(xiàn)自動(dòng)格式化修復(fù)
"editor.codeActionsOnSave": {
    "source.fixAll": true
},
//關(guān)閉保存時(shí)自動(dòng)格式化
"editor.formatOnSave": false,

配置文件 .eslintrc.cjs

  1. prettier 風(fēng)格配置 https://prettier.io

    1. 單引號(hào)

    2. 不使用分號(hào)

    3. 每行寬度至多80字符

    4. 不加對(duì)象|數(shù)組最后逗號(hào)

    5. 換行符號(hào)不限制(win mac 不一致)

  2. vue組件名稱多單詞組成(忽略index.vue)

  3. props解構(gòu)(關(guān)閉)

【eslint】eslint 配置 - 以硅谷甄選和大事件項(xiàng)目為例,Vue,前端文章來源地址http://www.zghlxwxcb.cn/news/detail-827727.html

  rules: {
    'prettier/prettier': [
      'warn',
      {
        singleQuote: true, // 單引號(hào)
        semi: false, // 無分號(hào)
        printWidth: 80, // 每行寬度至多80字符
        trailingComma: 'none', // 不加對(duì)象|數(shù)組最后逗號(hào)
        endOfLine: 'auto' // 換行符號(hào)不限制(win mac 不一致)
      }
    ],
    'vue/multi-word-component-names': [
      'warn',
      {
        ignores: ['index'] // vue組件名稱多單詞組成(忽略index.vue)
      }
    ],
    'vue/no-setup-props-destructure': ['off'], // 關(guān)閉 props 解構(gòu)的校驗(yàn)(props解構(gòu) 丟失響應(yīng)式)
    // ?? 添加未定義變量錯(cuò)誤提示,create-vue@3.6.3 關(guān)閉。
    'no-undef': 'error'
  }

到了這里,關(guān)于【eslint】eslint 配置 - 以硅谷甄選和大事件項(xiàng)目為例的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Vue typescript項(xiàng)目配置eslint+prettier

    Vue typescript項(xiàng)目配置eslint+prettier

    前言 本文基于 “vite”: “^5.0.0” 1.安裝依賴 安裝 eslint 安裝 eslint-plugin-vue 主要用于檢查 Vue 文件語法 安裝 prettier 及相關(guān)插件 安裝 typescript 解析器、規(guī)則補(bǔ)充 2.根目錄創(chuàng)建 .eslintrc.cjs 3.根目錄創(chuàng)建 .prettierrc.cjs 4.配置 package.json 的 scripts 字段 5.測(cè)試配置 如果本篇文章對(duì)你有幫

    2024年01月16日
    瀏覽(36)
  • vue3項(xiàng)目 - Eslint 配置代碼風(fēng)格

    vue3項(xiàng)目 - Eslint 配置代碼風(fēng)格

    總結(jié): Prettier? ?(代碼規(guī)范的插件,格式化 )--- 美觀 Eslint ? (規(guī)范、糾錯(cuò)、檢驗(yàn)錯(cuò)誤 )----- 糾錯(cuò) 首先, 禁用 Prettier 插件,安裝 ESLint 插件,配置保存時(shí)自動(dòng)修復(fù) 再 配置代碼風(fēng)格文件 .eslintrc.cjs (Prettier 配置 + ESLint 配置, 附配置代碼 ) 配置內(nèi)容 如, Prettier:?jiǎn)我?hào)、

    2024年02月04日
    瀏覽(21)
  • vue項(xiàng)目配置eslint(附visio studio code配置)

    vue項(xiàng)目配置eslint(附visio studio code配置)

    ? Which style guide do you want to follow? Standard ? What format do you want your config file to be in? JavaScript 編輯.eslintrc.js module.exports = { // 默認(rèn)情況下,ESLint會(huì)在所有父級(jí)組件中尋找配置文件,一直到根目錄。ESLint一旦發(fā)現(xiàn)配置文件中有 “root”: true,它就會(huì)停止在父級(jí)目錄中尋找。 root: true,

    2024年04月09日
    瀏覽(18)
  • vue3+ts項(xiàng)目中eslint校驗(yàn)配置

    vue3+ts項(xiàng)目中eslint校驗(yàn)配置

    eslint中文官網(wǎng):ESLint - Pluggable JavaScript linter - ESLint中文 ESLint 是一個(gè)根據(jù)方案識(shí)別并報(bào)告 ECMAScript/JavaScript 代碼問題的工具,其目的是使代碼風(fēng)格更加一致并避免錯(cuò)誤,合理利用可以提高代碼質(zhì)量。 1.安裝eslint pnpm i eslint -D 2.生成eslint配置文件 npx eslint --init 3.安裝vue3代碼環(huán)境校

    2024年02月04日
    瀏覽(47)
  • 【vue3+ts項(xiàng)目】配置eslint校驗(yàn)代碼工具,eslint+prettier+stylelint

    【vue3+ts項(xiàng)目】配置eslint校驗(yàn)代碼工具,eslint+prettier+stylelint

    package.json中 vite后面加上 --open 回答問題如下: 使用eslint僅檢查語法,還是檢查語法及錯(cuò)誤,選第二個(gè) 使用的是什么模塊,選第一個(gè) 項(xiàng)目使用的是什么框架,選vue 項(xiàng)目中使用TyoeScript ,選yes 項(xiàng)目運(yùn)行在哪,選瀏覽器 創(chuàng)建的配置類型需要什么類型的,選Javascript 需要安裝這些

    2024年02月09日
    瀏覽(54)
  • ESLint如何在vue3項(xiàng)目中配置和使用

    目錄 問題描述: 配置: 注意: 問題描述: 在用vite創(chuàng)建vue3項(xiàng)目時(shí)已經(jīng)選擇了添加ESLint,創(chuàng)建完成后使用 pnpm install命令(或者npm i)安裝了項(xiàng)目依賴之后,ESLint在項(xiàng)目中需要怎樣配置和使用呢? 配置: 在項(xiàng)目根目錄中,創(chuàng)建一個(gè) .eslintrc.js 文件。這將是ESLint的配置文件。 打

    2024年02月09日
    瀏覽(23)
  • vue3項(xiàng)目中簡(jiǎn)單實(shí)用的ESLint + Prettier配置

    vue3項(xiàng)目中簡(jiǎn)單實(shí)用的ESLint + Prettier配置

    一個(gè)中大型項(xiàng)目,一般由團(tuán)隊(duì)成員共同開發(fā)維護(hù)。而團(tuán)隊(duì)的成員都有自己的編碼風(fēng)格,導(dǎo)致整個(gè)項(xiàng)目的代碼看上去很亂,很難維護(hù)。這時(shí)就需要我們的ESlint來進(jìn)行限制。 一、使用vue-cli創(chuàng)建vue3項(xiàng)目 執(zhí)行vue-cli的創(chuàng)建項(xiàng)目命令 在執(zhí)行以上命令的時(shí)候,會(huì)有一步選擇編碼規(guī)范,如

    2024年02月12日
    瀏覽(20)
  • vue3+Vite+TS項(xiàng)目,配置ESlint和Prettier

    vue3+Vite+TS項(xiàng)目,配置ESlint和Prettier

    實(shí)操過的有兩種方式 1.vue腳手架 2.vite(推薦,也是尤大大團(tuán)隊(duì)研發(fā)) 具體怎么新建一個(gè)vue3項(xiàng)目就不多講了,可以按照官方文檔來 創(chuàng)建后的文件目錄長(zhǎng)這樣 多提一句,vite也會(huì)隨著時(shí)間不斷迭代,后續(xù)項(xiàng)目結(jié)構(gòu)可能還會(huì)發(fā)生變化,當(dāng)前使用的vue版本 和vite版本也一并貼出來 下

    2024年04月15日
    瀏覽(42)
  • Vue 項(xiàng)目eslint 配置編程風(fēng)格(VScode)(1),講的太清楚了

    Vue 項(xiàng)目eslint 配置編程風(fēng)格(VScode)(1),講的太清楚了

    安裝之后你就可以看到目錄里面有eslint 的配置文件: module.exports = { env: { browser: true, es2021: true }, extends: [ ‘plugin:vue/essential’, ‘standard’ ], parserOptions: { ecmaVersion: 12, sourceType: ‘module’ }, plugins: [ ‘vue’ ], rules: { } } 這里基本上eslint 就可以在項(xiàng)目里生效了,還需要自己風(fēng)格配

    2024年04月12日
    瀏覽(27)
  • 全局配置Eslint實(shí)現(xiàn)Standard標(biāo)準(zhǔn),以遍在各個(gè)Vue項(xiàng)目通用

    全局配置Eslint實(shí)現(xiàn)Standard標(biāo)準(zhǔn),以遍在各個(gè)Vue項(xiàng)目通用

    轉(zhuǎn)載于我個(gè)人博客 至于為什么我這種接觸前端沒幾天的新手要淺談這個(gè),說來話長(zhǎng)。?? 鏖戰(zhàn)半天才出配置好全部的eslint設(shè)置。為了保持standard標(biāo)準(zhǔn)的js代碼格式,并且可以在vue項(xiàng)目中檢查(同時(shí)可以檢查 .vue 文件),不得不使用eslint進(jìn)行代碼檢查。 本文將介紹全局eslint配置,實(shí)

    2024年02月01日
    瀏覽(15)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包