如何在vue项目中使用eslint+prettier格式化代码

    对于前端代码风格这个问题一直是经久不衰,每个人都有自己的代码风格,每次看到别人代码一团糟时候我们都会吐槽下。今天给大家介绍如何使用eslint+prettier统一代码风格。

对于eslint大家应该比较了解了,是用来校验代码规范的。给大家介绍下prettier,prettier是用来统一代码风格,格式化代码的,支持js、ts、css、less、scss、json、jsx。并且集成了vscode、vim、webstorm、sublime text插件。

如果你的项目中采用的是ellint默认规则并且没有添加别的规则、没有使用standard或airbnb得风格,你可以下载编辑器插件直接保存代码时自动格式化。

  以vscode为例:搜索插件  Eslint、vuter、prettier-code安装,在编辑器首选项   配置中修改配置

    //由于prettier不能格式化vue文件template  所以使用js-beautify-html格式化
    "vetur.format.defaultFormatter.html": "js-beautify-html", 
    "vetur.format.defaultFormatterOptions": {
        "js-beautify-html": {
            "wrap_attributes": "force-aligned" //属性强制折行对齐
        }
    },
    "eslint.autoFixOnSave": true,  //保存时使用自动格式化
    "eslint.validate": [   //验证文件类型
        "javascript",
        "javascriptreact",
        "vue",
        "html",
        "jsx",
        {
            "language": "html",
            "autoFix": true
        },
        {
            "language": "vue",
            "autoFix": true
        }
    ],
    "prettier.singleQuote": true, //使用单引号而不是双引号
    "prettier.jsxBracketSameLine": true,  //将>多行JSX元素放在最后一行的末尾,而不是单独放在下一行
    "editor.formatOnSave": true,  //保存时自动格式化

​

然后在eslint配置文件.eslintrc extends添加 eslint:recommended

extends: [
        'plugin:vue/essential',
        'eslint:recommended'
    ],

在page.json文件 scripts 中lint里面添加--fix   当执行npm run lint时eslint会帮你修复一些可以自动修复得规则

"scripts": {
        "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
        "start": "npm run dev",
        "lint": "eslint --fix --ext .js,.vue src",
        "build": "node build/build.js"
    },

现在我们就写完代码保存时prettier就会帮我们格式化代码,执行npm run lint时eslint会修复一些可以修复的规则,其余得规则就需要我们手动修复了

 

如果你的项目中使用的是standard或airbnd的代码规范、或项目中自己添加了一些eslint样式规则,那么我们需要安装一些依赖在项目中帮助格式化代码

npm i --save-dev prettier eslint-plugin-prettier eslint-config-prettier prettier-eslint-cli

安装eslint-plugin-prettier  配合eslint使用prettier,安装eslint-config-prettier禁用一些eslint和prettier冲突的规则,安装prettier-eslint-cli 使我们可以敲命令格式化代码

在.eslintrc.js  plugin和extends中添加prettier支持  rules中添加规则

 extends: [
        'plugin:vue/essential',
        'eslint:recommended',
        'plugin:prettier/recommended'
    ],
    // required to lint *.vue files
    plugins: ['vue', 'prettier'],
    // add your custom rules here
    rules: {
        'prettier/prettier': 'error',
        // allow debugger during development
        'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off'
    }

在page.json  script中添加配置   执行npm run format就可以格式化代码了

"scripts": {
        "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
        "start": "npm run dev",
        "lint": "eslint --fix --ext .js,.vue src",
        "build": "node build/build.js",
        "format": "prettier-eslint --write \"src/**/*.js\" \"src/**/*.vue\""
    },

当我们执行npm run format时还会报各种奇怪的错误 如:error: Delete  (prettier/prettier) at src/pages/xxx 等;这是因为prettier配置和编辑器prettier配置冲突导致的   在rules中配置下覆盖掉就可以了

"rules": {
  "no-console": 0,
  "prettier/prettier": [
    "error",
    {
      "singleQuote": true,
      "trailingComma": "none",
      "bracketSpacing": true,
      "jsxBracketSameLine": true
    }
  ]
}

现在我们就可以愉快的编码了

  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
要安装eslintprettier插件来进行vue项目代码规范和格式化,可以按照以下步骤进行操作: 1. 首先,在项目安装相关的插件。使用以下命令来安装eslint及其相关插件: ``` npm i eslint@7 -D npm i eslint-config-prettier eslint-plugin-prettier prettier eslint-plugin-vue babel-eslint -D ``` 需要注意的是,这里选择安装eslint7的版本是因为eslint8以上的版本废除了babel-eslint,转而使用@babel/eslint-parser替代。在使用@babel/eslint-parser时,可能会与项目本身的babel版本产生冲突,为了避免改动项目原有的babel版本,可以选择降低eslint版本。 2. 其次,需要在VSCode安装eslintprettier插件。打开VSCode,通过插件市场搜索并安装"ESLint"和"Prettier - Code formatter"插件。 3. 然后,在项目进行配置。在项目根目录下创建一个名为".eslintrc.js"的文件,并添加以下配置内容: ```javascript module.exports = { root: true, env: { node: true, }, extends: [ "plugin:vue/essential", "eslint:recommended", "@vue/prettier", ], parserOptions: { parser: "babel-eslint", ecmaVersion: 2020, }, rules: {}, }; ``` 这里使用了"plugin:vue/essential",这是一个预设的规则集,如果想要自己配置规则,可以使用"plugin:vue/essential"预设,并在rules自行添加规则。 4. 还需要在配置文件添加一些特殊的配置。在".eslintrc.js"的parserOptions添加"parser: 'vue-eslint-parser'",以解决在vue文件eslint报错的问题。 5. 最后,为了自定义prettier的配置,可以在项目根目录下创建一个名为".prettierrc"的文件,然后在其添加自定义的prettier配置。例如: ```json { "tabWidth": 2, "useTabs": false, "printWidth": 300, "semi": false, "singleQuote": true, "arrowParens": "avoid", "bracketSpacing": true, "endOfLine": "auto", "eslintIntegration": false, "htmlWhitespaceSensitivity": "ignore", "ignorePath": ".gnore", "trailingComma": "none" } ``` 这里的配置可以根据个人的喜好进行调整,具体的参数意义可以参考Prettier官网的文档。 这样,你就可以在vue项目安装并配置eslintprettier了。这些工具可以帮助你保持代码规范和格式化,提高代码质量和可读性。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值