【React】vite + react 项目,进行配置 eslint

安装与配置 eslint

      • 1 安装 eslint @babel/eslint-parser
      • 2 初始化配置 eslint
      • 3 安装 vite-plugin-eslint
      • 4 配置 vite.config.js 文件
      • 5 修改 eslint 默认配置

1 安装 eslint @babel/eslint-parser

npm i -D eslint @babel/eslint-parser

2 初始化配置 eslint

npx eslint --init

相关的配置设置根据实际情况选择即可
在这里插入图片描述
配置完成会自动安装相关依赖并生成 .eslintrc.cjs 文件

module.exports = {'env': {'browser': true,'es2021': true},'extends': ['eslint:recommended','plugin:react/recommended'],'overrides': [{'env': {'node': true},'files': ['.eslintrc.{js,cjs}'],'parserOptions': {'sourceType': 'script'}}],'parserOptions': {'ecmaVersion': 'latest','sourceType': 'module'},'plugins': ['react'],'rules': {},
};

3 安装 vite-plugin-eslint

npm i -D vite-plugin-eslint

4 配置 vite.config.js 文件

import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
import eslintPlugin from 'vite-plugin-eslint'export default defineConfig({plugins: [react(),// 添加 eslint 插件配置eslintPlugin({include: ['src/**/*.js', 'src/**/*.jsx', 'src/*.js', 'src/*.jsx']})],resolve: {alias: {},},
})

5 修改 eslint 默认配置

可根据实际情况进行配置。

module.exports = {'env': {'browser': true,'es2021': true},'extends': ['eslint:recommended','plugin:react/recommended'],'overrides': [{'env': {'node': true},'files': ['.eslintrc.{js,cjs}'],'parserOptions': {'sourceType': 'script'}}],'parserOptions': {'ecmaVersion': 'latest','sourceType': 'module'},'plugins': ['react'],'rules': {'indent': [2,2,{'SwitchCase': 1,'ignoredNodes': ['TemplateLiteral']}], //缩进'no-unused-vars': [0], //未使用变量'quotes': [2, 'single'], //单引号'jsx-quotes': ['error', 'prefer-single'],'no-console': [0, { 'allow': ['warn', 'error'] }], //console'linebreak-style': [0, 'unix'], //强制执行统一的行结尾'semi': [2, 'always'], //分号结尾'curly': 2,'no-eval': 1, //禁止使用eval'no-caller': 2,'no-else-return': 2, //如果if语句里面有return,后面不能跟else语句'no-extend-native': 2, //禁止扩展native对象'no-extra-bind': 2, //禁止不必要的函数绑定'no-floating-decimal': 2, //禁止省略浮点数中的0'no-implied-eval': 2, //禁止使用隐式eval'no-labels': 2, //禁止标签声明'no-with': 2, //禁用with'no-loop-func': 0, //禁止在循环中使用函数(如果没有引用外部变量不形成闭包就可以)'no-native-reassign': 2, //不能重写native对象'no-redeclare': [2], //禁止重复声明变量'no-unused-expressions': 0, //禁止无用的表达式'no-unneeded-ternary': 2, //禁止不必要的嵌套'no-use-before-define': 0, //未定义前不能使用'no-unreachable': 2, //不能有无法执行的代码'no-trailing-spaces': 1, //一行结束后面不要有空格'no-dupe-keys': 2, //在创建对象字面量时不允许键重复 {a:1,a:1}'no-dupe-args': 2, //函数参数不能重复'no-duplicate-case': 2, //switch中的case标签不能重复'array-bracket-spacing': [2, 'never'], //是否允许非空数组里面有多余的空格'arrow-body-style': [1],'no-undef-init': 0,'no-undefined': 0,'key-spacing': [//对象字面量中冒号的前后空格2,{'beforeColon': false,'afterColon': true}],'no-lonely-if': 2, //禁止else语句内只有if语句'no-inner-declarations': [2, 'functions'], //禁止在块语句中使用声明(变量或函数)'no-spaced-func': 2, //函数调用时 函数名与()之间不能有空格'no-case-declarations': [0],'no-multiple-empty-lines': [1, { 'max': 2 }], //空行最多不能超过2行'space-in-parens': [2, 'never'], //小括号里面要不要有空格'no-multi-spaces': [2], //不能用多余的空格'no-irregular-whitespace': 2,//不能有不规则的空格'react/prop-types': [0],'react/display-name': [0],'react/no-string-refs': [0],'react/jsx-no-comment-textnodes': [0],'react/no-unescaped-entities': [0]},
};

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

经典应用丨光伏行业扫码追溯新标杆,海康机器人AI智能读码器!

去年,光伏发电行业持续高速发展,我国仅在前九个月累计装机521.08GW,同比增长达到45.3%,已成为第二大电源类型超过水电。根据《2023中国与全球光伏发展白皮书》预测,到2030年,中国能够实现国家规划的风电和光…

vector类(一)

文章目录 vector介绍和使用1.vector的介绍2.vector的使用2.1 vector的定义2.2 vector iterator的使用2.3 vector空间增长问题2.4 vector增删查改2.5 vector迭代器失效问题 3.vector 在OJ中的使用 vector介绍和使用 1.vector的介绍 vector是表示 可变大小数组的 序列容器。 就…

Java面试八股文

【康康要努力】 hello,你好鸭,我是康康,很高兴你能来阅读,昵称是希望自己能不断精进,向着优秀程序员前行! 目前博客主要更新Java系列、数据库、项目案例、计算机基础等知识点。感谢你的阅读和关注,在记录的…

macos下 jupyter服务安装和vscode链接密码设置 .ipynb文件

最近收到了一些后缀为.ipynb的文件, 这个文件就是使用jupyter编辑的,于是就需要安装一个jupyter服务, 对于最新版本的jupyter 网上很多的资料都已经过期了,这里以最新版本的jupyter为例。 jupyter lab安装 jupyter 这个工具包含…

GitHub推送远程仓库详细教程

一、在远程新建一个仓库 二、在工作区初始化并提交到版本库 三、连接到远程仓库地址进行推送 四、推送到其他分支 4.1 新建其他分支 4.2 新建文件进行提交 4.3 将文件推送到其他分支 4.4 推送成功演示 4.5 连接远程跟踪分支,方便提交 4.6 直接push展示 五、其他 5…

R 生存分析3:Cox等比例风险回归及等比例风险检验

虽然Kaplan-Meier分析方法目前应用很广,但是该方法存在一下局限: 对于一些连续型变量,必须分类下可以进行生存率对比 是一种单变量分析,无法同时对多组变量进行分析 是一种非参数分析方法,必须有患者个体数据才能进行分析 英国…

队列+宽搜例题讲解!

429. N 叉树的层序遍历 题目解析: 根据题目分析,可以看出题目要我们求的是N叉数的层序遍历,就是把每层的放在一块,最后把每层都输出出来即可! 算法分析: 我们可以利用队列先进先出的特性进行求解&#x…

<QT基础(2)>QScrollArea使用笔记

项目需要设置单个检查的序列图像预览窗口,采用QScrollArea中加入QWidget窗口,每个窗口里面用Qlabel实现图像预览。 过程涉及两部分内容 引入QWidget 引入label插入图像(resize) 引入布局 组织 scrollArea内部自带Qwidget&#…

ARMday7作业

实现三个按键的中断,现象和代码 do_ipr.c #include "stm32mp1xx_gic.h" #include "stm32mp1xx_exti.h" extern void printf(const char *fmt, ...); unsigned int i 0; void do_irq(void) {//获取要处理的中断的中断号unsigned int irqnoGI…

神经网络:梯度下降法更新模型参数

作者:CSDN _养乐多_ 在神经网络领域,梯度下降是一种核心的优化算法,本文将介绍神经网络中梯度下降法更新参数的公式,并通过实例演示其在模型训练中的应用。通过本博客,读者将能够更好地理解深度学习中的优化算法和损…

SPU赋能PSI:探秘隐私集合求交核心技术与高级调度架构实践

1.SPU实现的PSI介绍 1.PSI的定义和种类 隐私集合求交(Private Set Intersection, PSI)是一种在密码学和安全多方计算(MPC)领域中的关键技术,允许两个或多个参与者在不泄露各自输入集合中非交集部分的前提下&#xff…

搭建机器人产业发展重要展示平台“2024南京国际机器人展览会”

2024南京国际智能机器人展览会 2024 Nanjing Intelligent Robot Expo 时间:2024年11月22-24日 地点:南京国际博览中心 南京,这座历史悠久的文化名城,如今正站在机器人产业发展的前沿。随着全球科技的飞速进步,机器人产业已经成为推动经济社…