ESLint+Prettier+VSCode编程规范

news2024/11/25 7:32:39

编程规范

  • ESLint
  • Prettier
  • ESLint和Prettier配合解决代码格式化问题
    • 1. 在VSCode搜索Prettier插件安装
    • 2. 创建prettier配置文件
    • 3. 在VSCode中设置
      • 3.1 找到左下角设置图标,点击设置
      • 3.2 但是对VSCode 而言,默认一个 tab 等于 4 个空格,而 ESLint 希望一个 tab 为两个空格,此时还需要修改设置中修改数字为 2 :
      • 3.3 当存在多个格式化工具时,例如存在prettier和volar时,在代码文件中右键 -> 使用...格式化 -> 选择prettier格式化
      • 3.4. ESLint和Prettier之间的冲突问题

ESLint

一个插件化的JavaScript代码检测工具

在我们创建好的vue3项目中.eslintrc.js文件就是ESLint配置文件:
在这里插入图片描述
配置内容解析:

module.exports = {
  // 表示当前目录即为根目录,ESLint 规则将被限制到该目录下
  root: true,
  // env 表示启用 ESLint 检测的环境
  env: {
    // 在 node 环境下启动 ESLint 检测
    node: true
  },
  // ESLint 中基础配置需要继承的配置
  extends: [
    'plugin:vue/vue3-essential',
    '@vue/standard'
  ],
  // 解析器
  parserOptions: {
    parser: '@babel/eslint-parser'
  },
  // 需要修改的启用规则及其各自的错误级别
  /**
    * 错误级别分为三种:
    * “off”或 0 - 关闭规则
    * “warn”或 1 - 开启规则,使用警告级别的错误: warn (不会导致程序退出)
    * “error”或 2  开启规则,使用错误级别的错误: error (当被触发的时候,程序会退出)
  */
  rules: {
    'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
    'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off'
  }
}

Prettier

代码格式化工具,可以配合VSCode和ESLint在保存时自动格式化代码

ESLint和Prettier配合解决代码格式化问题

1. 在VSCode搜索Prettier插件安装

在这里插入图片描述

2. 创建prettier配置文件

在代码根目录创建.pretterrc文件
在这里插入图片描述
输入内容:

{
  "semi": false,  // js后是否尾随分号
  "singleQuote": true,  // 是否使用单引号
  "trailingComma": "none"  // 多行js语法中在最后一行添加逗号
}

3. 在VSCode中设置

3.1 找到左下角设置图标,点击设置

在这里插入图片描述
搜索save,找到Format On Save,勾选
在这里插入图片描述
此时,在代码保存时会自动格式化代码。

3.2 但是对VSCode 而言,默认一个 tab 等于 4 个空格,而 ESLint 希望一个 tab 为两个空格,此时还需要修改设置中修改数字为 2 :

在这里插入图片描述

3.3 当存在多个格式化工具时,例如存在prettier和volar时,在代码文件中右键 -> 使用…格式化 -> 选择prettier格式化

在这里插入图片描述

3.4. ESLint和Prettier之间的冲突问题

当出现冲突时可以在.eslintrc.js文件中修改文件中的规则

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1020478.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Hierarchical Coverage Path Planning in Complex 3D Environments】

Hierarchical Coverage Path Planning in Complex 3D Environments 复杂三维环境下的分层覆盖路径规划 视点采样全局TSP 算法分两层,一层高级一层低级: 高层算法将环境分离多个子空间,如果给定体积中有大量的结构,则空间会进一步细…

基于PyTorch搭建FasterRCNN实现目标检测

基于PyTorch搭建FasterRCNN实现目标检测 1. 图像分类 vs. 目标检测 图像分类是一个我们为输入图像分配类标签的问题。例如,给定猫的输入图像,图像分类算法的输出是标签“猫”。 在目标检测中,我们不仅对输入图像中存在的对象感兴趣。我们还…

软件工程之总体设计

总体设计是软件工程中的一个重要阶段,它关注整个系统的结构和组织,旨在将系统需求转化为可执行的软件解决方案。总体设计决定了系统的架构、模块划分、功能组织以及数据流和控制流等关键方面。 可行性研究 具体方面:经济可行性、技术可行性…

如何正确安装滚珠螺杆螺母?

在安装滚珠螺母时,相信很多人都遇到过装反这个问题,滚珠螺杆螺母是通过高精度的加工和配合实现传递转矩和运动的,如果将滚珠螺杆螺母反过来装,会导致导向槽和调整垫片位置不正确,使得整个螺杆系统的传动精度降低&#…

sketch for Mac快捷键大全

你可以在sketch中使用键盘快捷键来加快你的设计过程。要使用键盘快捷键,请同时按下下列列表的所有键。有些命令只能根据你在做什么或者你选择了什么才启用,所有把命令分成了下列不同的部分。 sketch下载地址:sketch 破解-Sketch for mac(专业…

Linux 信号集 及其 部分函数

这几个函数都是对自己自定义的信号集操作 int sigemptyset(sigset_t *set) 功能:清空信号集中的数据,将所有的标志位置为0 参数:set需要操作的信号集 返回值:成功0失败-1 int sigfillset(sigset_t *set) 功能:清空…

各个浏览器离线安装包获取方式

前言 我们一般去浏览器官网下载所谓的官方版浏览器,但是如今呢,下载的都是在线安装包,大小大约1~2MB,安装时电脑必须联网,每次都要从网络上下载。就像下面这样的: 在线安装包的运行必须有网络环境&#…

批量使用cdo 修改分辨率的方法

文件夹里有很多这种grib文件 怎么有2.3T啊,好大,一个一个改太浪费时间了 现在我想用cdo 批量他们的分辨率都降低一些,怎么做呢? find . -name *low.grib |xargs -I{} cdo remapbil,r144x72 {} {}_low.nc 思路:使用 find 命令找到…

小型网络实验组网

路漫漫其修远兮,吾将上下而求索 时隔多日,没有更新,今日一写,倍感教育的乐趣。如果让我每天发无意义的文章,我宁可不发。 实验拓扑 实验要求 (1)内网主机采用DHCP分配IP地址 (2&…

6-3 pytorch使用GPU训练模型

深度学习的训练过程常常非常耗时,一个模型训练几个小时是家常便饭,训练几天也是常有的事情,有时候甚至要训练几十天。 训练过程的耗时主要来自于两个部分,一部分来自数据准备,另一部分来自参数迭代。 当数据准备过程还…

分享一下微信公众号怎么添加砸金蛋链接

一、砸金蛋活动的优势 砸金蛋活动是一种非常有趣且吸引人的互动方式,在微信公众号中添加砸金蛋链接有以下优势: 提高用户参与度:砸金蛋活动能够激发用户的参与度和好奇心,让用户感到有乐趣和刺激。通过砸金蛋的方式,…

现在全国融资融券两融利率最低是多少?哪家证券公司券商费率低?

融资融券是指投资者通过向券商借入资金(融资)或借入证券(融券),以达到获得更高收益、降低交易风险、提高资金利用效率的目的。通过融资,投资者可以用借入的资金买入更多的证券;通过融券&#xf…

乐器商城小程序开发全攻略

随着互联网的普及和电子商务的快速发展,越来越多的人开始通过在线购物来满足自己的需求。而乐器作为一种特殊的商品,其在线销售市场也在不断扩大。为了满足这一需求,许多乐器商家开始开发自己的小程序商城,以提供更加便捷、高效的…

python使用SMTP发送邮件

SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件、HTML邮件以及带附件的邮件。 Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件。 首先,我们来构造一个最简单的…

[BJDCTF2020]Mark loves cat foreach导致变量覆盖

这里我们着重了解一下变量覆盖 首先我们要知道函数是什么 foreach foreach (iterable_expression as $value)statement foreach (iterable_expression as $key > $value)statement第一种格式遍历给定的 iterable_expression 迭代器。每次循环中,当前单元的值被…

184_Python 在 Excel 和 Power BI 绘制堆积瀑布图

184_Python 在 Excel 和 Power BI 绘制堆积瀑布图 一、背景 在 2023 年 8 月 22 日 微软 Excel 官方宣布:在 Excel 原生内置的支持了 Python。博客原文 笔者第一时间就更新到了 Excel 的预览版,通过了漫长等待分发,现在可以体验了&#xf…

微信生态全场景方案

微信生态全场景方案 微信生态场景复杂,如何实现快速接入? 企业拥有跨平台数据,平台间数据割裂,如何实现各业务线数据整合? 借助身份云平台可快速接入微信生态全场景,轻松打通微信生态、电商平台、第三方平台…

prometheus 告警

prometheus 告警 1, prometheus 告警简介 告警能力在Prometheus的架构中被划分成两个独立的部分。如下所示,通过在Prometheus中定义AlertRule(告警规则),Prometheus会周期性的对告警规则进行计算,如果满足告警触发条件就会向Alertmanager发送告警信息。 在Prometheus中一…

基于Java建筑装修图纸管理平台设计实现(源码+lw+部署文档+讲解等)

博主介绍:✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专…

(高阶)Redis 7 第13讲 数据双写一致性 canal篇

面试题 问题答案如何保证mysql改动后,立即同步到Rediscanal 简介 https://github.com/alibaba/canal/wikihttps://github.com/alibaba/canal/wiki 基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费 业务 数据库镜像数据库实时备份多级索引 (卖家和买家各自分库索引…