vscode+vue cli3.0创建项目配置Prettier+eslint方式

 更新时间:2023年10月20日 10:50:24   作者:miss-f  
这篇文章主要介绍了vscode+vue cli3.0创建项目配置Prettier+eslint方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

1、vue create 项目名创建项目时选择自定义创建

会询问你是否安装eslint,我选择了ESLint + Prettier方式;

他会默认下载

  • eslint
  • babel-eslint
  • eslint-plugin-prettier
  • eslint-plugin-vue
  • @vue/eslint-config-prettier

等插件

2、创建项目时

你会选择1种直接在package.json中生成eslint配置即字段eslintConfig里面

(个人不喜欢这个方式。你对写的东西不方便备注)

还有一种就是在项目下面创建一个.eslintrc.js文件里面配置你的eslint配置

3、如下是我个人配置的.eslintrc.js

module.exports = {
  // 默认情况下,ESLint会在所有父级组件中寻找配置文件,一直到根目录。ESLint一旦发现配置文件中有   "root": true,它就会停止在父级目录中寻找。
  root: true,
  // 该配置属性定义来一组预定义的全局变量。这些环境并不是互斥的,所以你可以同时定义多个。
  env: {
    node: true,
  },
  // extends是扩展插件的意思,用来配置vue.js风格
  extends: [
    "plugin:vue/essential", // 全称 eslint-plugin-vue
    "@vue/prettier", // 全称 eslint-plugin-prettier
  ],
  // ESLint 支持使用第三方插件。在使用插件之前,你必须使用包管理工具安装它。
  // 在配置文件里配置插件时,可以使用 plugins 关键字来存放插件名字的列表。
  // 插件名称可以省略 eslint-plugin- 前缀。
  plugins: ["vue"],
  // 额外的全局变量。我们使用第三方提供的全局变量的时候(例如:jQuery,AMap 等对象),
  // ESLint 并不能识别他们,总是会报错。这个时候,该配置的作用就出现了。
  // 使用 globals 指出你要使用的全局变量。将变量设置为 true 将允许变量被重写,或 false 将不允许被重写。
  globals: {
    // $: false,
    // jquery: false,
    // AMap: false
  },
  // ESLint 的规则。你可以使用注释或配置文件修改你项目中要使用的规则。
  // rules:开启规则和发生错误时报告的等级,规则的错误等级有三种:
  // 0 或'off':关闭规则。
  // 1 或'warn':打开规则,并且作为一个警告(并不会导致检查不通过)。
  // 2 或'error':打开规则,并且作为一个错误(退出码为1,检查不通过)
  rules: {
    // allow debugger during development
    "no-console": process.env.NODE_ENV === "production" ? "error" : "off",
    "no-debugger": process.env.NODE_ENV === "production" ? "error" : "off",
    "prettier/prettier": [
      "error",
      {
        semi: false, // 是否使用分号, 默认true
        singleQuote: true, // 使用单引号, 默认false(在jsx中配置无效, 默认都是双引号)
      },
    ],
  },
  parserOptions: {
    parser: "babel-eslint",
  },
};

4、vscode需要安装几个格式化插件

  • Beautify
  • ESLint
  • Vetur
  • Prettier - Code formatter

然后点击文件=>首选项=>设置会有用户设置和工作区设置建议保存在工作区设置以便大家共享

5、工作区设置后

会在项目下生成一个.vscode文件夹下面有setting.json

以下是我的配置:

{
// 把eslint保存在工作区,方便大家共享
   // 配置eslint
   "vetur.validation.template": false,
   // vscode默认启用了根据文件类型自动设置tabsize的选项
   "editor.detectIndentation": false,
   //关闭Vetur的linting功能
   // "vetur.validation.template": false,
   // 重新设定tabsize
   "editor.tabSize": 2,//制表符符号eslint
   //  #让函数(名)和后面的括号之间加个空格
   "javascript.format.insertSpaceBeforeFunctionParenthesis": true,
   // #这个按用户自身习惯选择 
   "vetur.format.defaultFormatter.html": "js-beautify-html",//格式化.vue中html
   "vetur.format.defaultFormatter.ts": "none",
   // #让vue中的js按编辑器自带的ts格式进行格式化 
   "vetur.format.defaultFormatter.js": "vscode-typescript",
   "vetur.format.defaultFormatterOptions": {
     "js-beautify-html": {
       "wrap_attributes": "auto", //属性强制折行对齐
       "end_with_newline": false,
     },
     "prettier": {
       "semi": false, //  #去掉代码结尾的分号 
       "singleQuote": true //  #使用带引号替代双引号 
     }
   },
   // 每次保存的时候自动格式化(建议关掉,用eslint来修复)
   "editor.formatOnSave": false,
   
   //旧版本配置
    // 每次保存的时候将代码按eslint格式进行修复
   // "eslint.autoFixOnSave": true,
   // 添加 vue 支持
   "eslint.validate": [
     "javascript",
     "javascriptreact",
     "html",
     "vue",
   ],
   "eslint.options": {
     "extensions": [
         ".js",
         ".vue"
     ]
 },
    //新版本配置
  "editor.codeActionsOnSave": {
     "source.fixAll.eslint": true
   },
   "[javascript]": {
     "editor.defaultFormatter": "esbenp.prettier-vscode"
   },
   "[json]": {
     "editor.defaultFormatter": "HookyQR.beautify"
   },
   "[html]": {
     "editor.defaultFormatter": "vscode.html-language-features"
   },
   // "vetur.format.options.tabSize": 2,
   // 文件头部注释  
   "fileheader.customMade": {
     "Descripttion": "",
     "version": "",
     "Author": "Mr.fang",
     "Date": "Do not edit",
     "LastEditors": "Mr.fang",
     "LastEditTime": "Do not Edit"
   }, //函数注释  
   "fileheader.cursorMode": {
     "name": "",
     "test": "test font",
     "msg": "",
     "param": "",
     "return": ""
   },
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Vue3中element-plus全局使用Icon图标的过程详解

    Vue3中element-plus全局使用Icon图标的过程详解

    我们在用vue开发网站的时候,往往图标是起着很重要的作,这篇文章主要给大家介绍了关于Vue3中element-plus全局使用Icon图标的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-01-01
  • vue项目中使用rimraf dev启动时删除dist目录方式

    vue项目中使用rimraf dev启动时删除dist目录方式

    这篇文章主要介绍了vue项目中使用rimraf dev启动时删除dist目录方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • vue{{}}拼接字符串和换行符方式

    vue{{}}拼接字符串和换行符方式

    这篇文章主要介绍了vue{{}}拼接字符串和换行符方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • vue.js动画中的js钩子函数的实现

    vue.js动画中的js钩子函数的实现

    这篇文章主要介绍了vue.js动画中的js钩子函数的实现,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • vue如何使用element-ui 实现自定义分页

    vue如何使用element-ui 实现自定义分页

    这篇文章主要介绍了vue如何使用element-ui 实现自定义分页,可以通过插槽实现自定义的分页,本文通过实例图文相结合给大家介绍的非常详细,感兴趣的朋友一起看看吧
    2024-07-07
  • vue实现表格分页功能

    vue实现表格分页功能

    这篇文章主要为大家详细介绍了vue实现表格分页功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • 前端vue实现的h5页面接入微信支付流程(jsapi方式)

    前端vue实现的h5页面接入微信支付流程(jsapi方式)

    vue实现微信支付有三种方式,第一种方式是PC端支付,第二种方式是H5支付,第三种方式是微信公众号支付,这篇文章主要给大家介绍了关于前端vue实现的h5页面接入微信支付流程,文中介绍的方法是利用jsapi方式,通过代码将实现的方法介绍的非常详细,需要的朋友可以参考下
    2024-01-01
  • Vue+Element实现表格单元格编辑

    Vue+Element实现表格单元格编辑

    这篇文章主要为大家详细介绍了Vue+Element实现表格单元格编辑,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • Vue报错ERR_OSSL_EVP_UNSUPPORTED解决方法

    Vue报错ERR_OSSL_EVP_UNSUPPORTED解决方法

    Vue项目启动时报错ERR_OSSL_EVP_UNSUPPORTED,本文主要介绍了Vue报错ERR_OSSL_EVP_UNSUPPORTED解决方法,具有一定的参考价值,感兴趣的可以了解一下
    2024-08-08
  • vue3引入highlight.js进行代码高亮的方法实例

    vue3引入highlight.js进行代码高亮的方法实例

    最近忙着开发自己的开发脚手架,在做代码生成器的时候,有个预览功能,需要让代码高亮,下面这篇文章主要给大家介绍了关于vue3引入highlight.js进行代码高亮的相关资料,需要的朋友可以参考下
    2022-04-04

最新评论