vue-cli4项目开启eslint保存时自动格式问题

yizhihongxing

下面是“vue-cli4项目开启eslint保存时自动格式问题”的完整攻略。

1. 安装必要依赖

首先,我们需要安装一些必要的依赖,以支持Eslint的自动格式化功能。具体操作如下:

安装Eslint相关依赖

npm install eslint --save-dev
npm install eslint-plugin-vue --save-dev
npm install @vue/eslint-config-prettier --save-dev

这里我们安装了三个Eslint的相关依赖:eslint、eslint-plugin-vue和@vue/eslint-config-prettier。其中,eslint是Eslint的核心依赖,eslint-plugin-vue是用来支持.vue文件的支持,@vue/eslint-config-prettier则是用来通过Eslint和Prettier来限制代码风格。

安装Prettier

npm install prettier --save-dev
npm install eslint-config-prettier --save-dev
npm install eslint-plugin-prettier --save-dev

这里我们安装了Prettier的核心依赖prettier,以及eslint-config-prettier和eslint-plugin-prettier用来支持Eslint和Prettier的集成。

2. 配置Eslint

接下来,我们需要对Eslint进行一些配置,以支持自动格式化功能。具体操作如下:

在.eslintrc.js文件中添加相关配置

在项目的根目录下找到.eslintrc.js这个文件,添加如下代码:

module.exports = {
  extends: ['plugin:vue/essential', '@vue/prettier', '@vue/typescript'],
  plugins: ['prettier'],
  rules: {
    'prettier/prettier': 'error',
    // your rules
  },
};

这里的extends表示继承哪些规则,@vue/prettier用来设置和Prettier的一致性,@vue/typescript用来支持TypeScript。plugins数组中添加了prettier,用来支持自动格式化功能。rules中的prettier/prettier: 'error'表示开启Prettier的自动格式化。

3. 配置VSCode

最后,我们需要对Visual Studio Code进行一些配置,以支持Eslint的自动格式化功能。具体操作如下:

安装Prettier插件

在Visual Studio Code的扩展商城中搜索Prettier插件并安装。

配置VSCode中的setting.json文件

在Visual Studio Code的setting.json文件中添加如下配置:

{
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": true
  },
  "editor.formatOnSave": false
}

这里的editor.codeActionsOnSave表示在保存时执行的命令,source.fixAll.eslint表示通过Eslint自动修复所有问题。editor.formatOnSave设置为false表示不启用Visual Studio Code自带的格式化功能,因为这个会导致Prettier失效。

示例

下面是两条示例说明。

示例一

例如,我们在.vue文件中写下如下代码:

<template>
  <div>
    <p>{{ message}}</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      message: 'Hello World'
    };
  }
};
</script>

保存后,使用Eslint和Prettier自动格式化后的代码如下:

<template>
  <div>
    <p>{{ message }}</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      message: 'Hello World',
    };
  },
};
</script>

可以看到,Prettier自动修复了.vue文件中的代码格式。

示例二

例如,我们在.ts文件中写下如下代码:

function sum(a: number, b: number) {
    return a+b;
}

console.log(sum(1,2));

保存后,使用Eslint和Prettier自动格式化后的代码如下:

function sum(a: number, b: number) {
  return a + b;
}

console.log(sum(1, 2));

可以看到,Prettier处理了.ts文件中的代码缩进和空格问题,使代码更加规范。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue-cli4项目开启eslint保存时自动格式问题 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • Web js实现复制文本到粘贴板

    要在Web页面中使用JavaScript实现将文本复制到剪贴板,需要使用Clipboard API。以下是实现此功能的完整攻略: 步骤一:检查浏览器兼容性 检查浏览器是否支持 Clipboard API: if (!navigator.clipboard) { console.log(‘浏览器不支持 Clipboard API.’); } 步骤二:编写复制到…

    JavaScript 2023年6月10日
    00
  • Javascript Date getHours() 方法

    以下是关于JavaScript Date对象的getHours()方法的完整攻略,包括两个示例说明。 JavaScript Date对象的getHours方法 JavaScript Date对象的getHours()方法返回一个小时的数字(0-23)。该方法可用获取当前日期的小时数。 下使用Date对象的getHours()方法的示例: var date =…

    JavaScript 2023年5月11日
    00
  • 微信小程序—setTimeOut定时器的问题及解决

    微信小程序中,setTimeOut是常用的定时器函数,可以在指定的时间后执行某个函数。但是在使用过程中,也容易遇到以下几个问题:延迟时间不精确、在处于非当前页面时仍执行等问题。接下来,我将针对这些问题详细讲解,为大家提供解决方案。 问题一:延迟时间不精确 在使用setTimeOut时,由于小程序的架构限制,实际延迟的时间可能存在一定误差。解决这个问题的方法也…

    JavaScript 2023年6月11日
    00
  • js时间比较 js计算时间差的简单实现方法

    接下来我会详细讲解“JavaScript 时间比较和计算时间差”的实现方法,包括以下几个部分内容: 时间格式化 时间比较 计算时间差 示例说明 1. 时间格式化 在 JavaScript 中,日期和时间可以使用 Date 对象来表示。但是,要在代码中比较和计算时间,通常需要使用字符串格式的日期和时间。 在进行时间格式化时,我们可以借助一些常用的库,例如 mo…

    JavaScript 2023年5月27日
    00
  • js中实现字符串和数组的相互转化详解

    JS中实现字符串和数组的相互转化详解 在JS中,字符串和数组之间相互转化是比较常见的操作。通常会通过split和join完成转化。接下来将详细介绍这两个方法的使用技巧。 split方法 split方法可以将字符串按照指定的分隔符,转化成数组。 const str = "hello,world" const arr = str.split(…

    JavaScript 2023年5月27日
    00
  • js判断浏览器是否支持严格模式的方法

    判断浏览器是否支持严格模式,我们可以通过以下两种方法来实现。 方法一 我们可以使用try…catch语句,在try语句中编写一个无法在严格模式下执行的代码,然后在catch语句中捕获错误,如果没有捕获到错误就代表浏览器支持严格模式。 示例代码: var isStrictMode; try { eval("’use strict’; var x …

    JavaScript 2023年6月10日
    00
  • axios拦截器、ElementUI组件的使用方法

    axios拦截器使用方法 1. 安装Axios Axios是一个基于Promise的HTTP库,可以在浏览器和Node.js中使用。安装Axios,请在命令行输入以下命令: npm install axios 2. 添加拦截器 可以使用Axios的拦截器来在请求或响应被处理前拦截它们。 以下是一个示例,向请求头中添加Authorization: import…

    JavaScript 2023年6月10日
    00
  • JavaScript对象封装的简单实现方法(3种方法)

    下面将详细讲解“JavaScript对象封装的简单实现方法(3种方法)”的完整攻略。 什么是JavaScript对象封装? JavaScript对象封装是指使用面向对象编程的思想,将数据和方法封装在一起,通过暴露公共方法的方式来实现数据的访问和操作保护。 实现JavaScript对象封装的三种方法 1. 利用构造函数实现对象封装 构造函数是一种用于创建对象的…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部