IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> eslint,prettier配置 -> 正文阅读

[JavaScript知识库]eslint,prettier配置

ESlint与Prettier配置



什么是eslint

简单的说eslint就是代码检查工具, 用来检查你的代码是否符合指定的规范;使用它可以避免低级错误和统一代码的风格。如果每次在代码提交之前都进行一次eslint代码检查,就不会因为某个字段未定义为undefined或null这样的错误而导致服务崩溃,可以有效的控制项目代码的质量。


eslint配置

  1. 初始化一个express项目

mkdir eslint-test
cd eslint-test
npm init -y
npm i express
touch index.js

index.js内容如下

const express = require('express')
const app = express()

app.get('/', async (req, res) => {
	try {
		res.send('<h1>eslint init</h1>')
	} catch {}
})

app.listen(3000, () => {
	console.log('server run on port 3000')
})
  1. 安装eslint并初始化

npm i eslint --save-dev
npm init @eslint/config

  1. 选择eslint提供的功能

    3.1 选择检查语法, 发现问题,强制代码风格
    检查语法, 发现问题,强制代码风格
    3.2 项目以哪种模块类型,选择 CommonJs, 因为我们是使用的Node环境
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/dd5c43d5c1f04f0180fad7a0bd9a6b4b.png
    3.3 项目使用什么框架, 什么都不选
    在这里插入图片描述
    3.4 项目使用ts吗,选择不使用
    在这里插入图片描述
    3.5 项目使用什么样的代码风格 选择使用一个流行的样式方案
    在这里插入图片描述

    3.6 提供的几种比较流行的方案, 选择标准的
    在这里插入图片描述
    3.7 配置文件已什么结尾的, 这里选择 js
    在这里插入图片描述
    3.8 安装标准方案提供的一些依赖
    在这里插入图片描述
    3.9 使用什么包管理器, 这里选择 npm
    在这里插入图片描述

  2. 创建 .eslintignore文件,该文件是eslint需要忽略的文件

node_modules
package*.json

  1. 在package.json中scripts中添加配置
"lint": "eslint . --ext .js,.json",
"lint:fix": "eslint --fix . --ext .js,.json"

需要??注意的是: eslint --fix . --ext .js,.json中的.js,.json中间不要带空格
  1. 执行 npm run lint即可查看哪些代码不符合eslint的标准, npm run lint:fix可以修复这些不符合的标准

什么是prettier

Prettier是一个代码格式化工具,它可以支持JS/JSX/TS/Flow/JSON/CSS/LESS等文件格式。

为什么要使用prettier?

用来替代lint中的一些场景,比如说分号/tab缩进/空格/引号,这些在lint工具检查出问题之后还需要手动修改,而通常这样的错误都是空格或者符号之类的,这样相对来说不太优雅,利用格式化工具自动生成省时省力。

安装prettier

npm install --save-dev --save-exact prettier
–save-exact的作用就是固定依赖包的版本,不要带^或~,避免出现小版本。
有利于版本统一。

  1. 创建 .prettierrc.js, 内容如下
module.exports = {
  tabWidth: 2,
  printWidth: 80,
  useTabs: false,
  semi: true,
  singleQuote: true,
  bracketSpacing: true,
  bracketSameLine: false,
  trailingComma: 'es5',
  overrides: [
    {
      files: '*.json',
      options: {
        printWidth: 140,
      },
    },
  ],
};

prettier常用配置

// 超过最大值换行
printWidth: 100, 
 // 缩进字节数
tabWidth: 4,
 // 缩进不使用tab, 使用空格
useTabs: false,
 // 句尾添加分号
semi: true,
// 使用单引号代替双引号
singleQuote: true, 
// 默认值。因为使用了一些折行敏感型的渲染器(如GitHub comment)而按照markdown文本样式进行折行
proseWrap: "preserve", 
//  (x) => {} 箭头函数参数只有一个时是否要有小括号。avoid: 省略括号
arrowParens: "avoid", 
 // 在对象,数组括号与文字之间加空格 "{ foo: bar }"
bracketSpacing: true,
 // 不格式化vue文件,vue文件的格式化单独设置
disableLanguages: ["vue"],
// 结尾是 \n \r \n\r auto
endOfLine: "auto", 
//不让prettier使用eslint的代码格式进行校验
eslintIntegration: false, 
htmlWhitespaceSensitivity: "ignore",
 // 不使用prettier格式化的文件填写在项目的.prettierignore文件中
ignorePath: ".prettierignore",
// 在jsx中把'>' 是否单独放一行
jsxBracketSameLine: false, 
// 在jsx中使用单引号代替双引号
jsxSingleQuote: false, 
 // 格式化的解析器,默认是babylon
parser: "babylon",
// Require a 'prettierconfig' to format prettier
requireConfig: false, 
 //不让prettier使用stylelint的代码格式进行校验
stylelintIntegration: false,
 // 在对象或数组最后一个元素后面是否加逗号(在ES5中加尾逗号)
trailingComma: "es5",
 // 不让prettier使用tslint的代码格式进行校验
tslintIntegration: false

解决ESLint和prettier冲突

解决 ESLint 中的样式规范和 prettier 中样式规范的冲突,以 prettier 的样式规范为准,使 ESLint 中的样式规范自动失效

npm i eslint-config-prettier --save-dev
eslint-config-prettier 作用就是解决eslint和prettier冲突

需要在.eslintrc.js配置extend

extends: [
	// eslint-config-prettier, 关闭一些与 Prettier 冲突的 ESLint 规则。
	// 覆盖eslint格式配置, 需要写在extends最后面
	'prettier',
],

prettier额外配置

大家都知道prettier主要是用来进行代码格式化的, 美化代码的, 那肯定需要触发如: prettier --write . ,这个插件的主要作用就是将 prettier 作为 ESLint 的规则来使用,相当于代码不符合 Prettier 的标准时,会报一个 ESLint 错误,同时也可以通过 eslint --fix 来进行格式化。

  1. 安装eslint-plugin-prettier

npm i eslint-plugin-prettier -D

需要在.eslintrc.js配置extend

extends: [
	'plugin:prettier/recommended'
],

总结

以上便是eslint,prettier的配置

prettier: prettier官网
eslint: eslint官网

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-05-13 11:40:51  更:2022-05-13 11:41:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 12:15:19-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码