前端基础之《React(7)—webpack简介-ESLint集成》

接上篇......

十五、ESLint集成

1、安装eslint插件

bash 复制代码
cnpm i eslint-webpack-plugin -D
cnpm i eslint -D

2、只需要开发环境集成

修改serve.js:

javascript 复制代码
// 只有开发环境才需要用到配置
const path = require('path')
const ESLintPlugin = require('eslint-webpack-plugin')

module.exports = {
    mode: 'development',
    devtool: 'inline-source-map',

    // 本地服务配置
    devServer: {
        port: 8000
    },

    module: {
        rules: [
            {
                test: /\.(css|scss)$/i,
                use: ['style-loader', 'css-loader', 'sass-loader'], // 从右向左执行
                exclude: /node_modules/
            }
        ]
    },

    plugins: [
        // 集成eslint代码检测
        new ESLintPlugin({
            eslintPath: 'eslint', // 指定使用什么进行代码检测
            extensions: ['js', 'jsx', 'ts', 'tsx'], // 对哪些模块进行检测
            context: path.resolve(__dirname, '../src'), // 检测的目录
            exclude: ['node_modules'], // 对哪些模块进行排除
            fix: false // 关闭自动修复
        })
    ]
}

3、eslint9.0以后要运行向导生成配置文件

bash 复制代码
cnpm init @eslint/config








需要安装的依赖包:

bash 复制代码
cnpm i eslint -D
cnpm i @eslint/js -D
cnpm i globals -D
cnpm i typescript-eslint -D
cnpm i eslint-plugin-react -D
cnpm i typescript -D

生成的eslint.config.mjs文件:

javascript 复制代码
import js from "@eslint/js";
import globals from "globals";
import tseslint from "typescript-eslint";
import pluginReact from "eslint-plugin-react";
import { defineConfig } from "eslint/config";

export default defineConfig([
  { files: ["**/*.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"], plugins: { js }, extends: ["js/recommended"], languageOptions: { globals: globals.browser } },
  tseslint.configs.recommended,
  pluginReact.configs.flat.recommended,
]);
相关推荐
hunterandroid8 分钟前
HarmonyOS HUKS 密钥全生命周期实战:生成、轮换与失效处理
前端·华为
东鹏特饮16 分钟前
贪吃蛇小游戏html
前端·javascript·html
溪语流沙18 分钟前
【每天一个CSS | Day23】边框上有一道光在跑的流光呼吸卡片
前端·css
小马不起床21 分钟前
零基础玩转 FastAPI_10:前端登录、权限与布局
前端·状态模式·fastapi
程序员Sunday28 分钟前
JavaScript 深拷贝和浅拷贝有什么区别?structuredClone 能替代 JSON 拷贝吗?
前端·javascript
ShineWinsu1 小时前
对于CSS:选择器的解析
前端·css·面试·html·web·选择器·网页
m0_587383001 小时前
碰碰好评卡功能落地实战 从需求梳理到上线部署全流程实操指南
java·linux·服务器·前端·javascript·vue.js·人工智能
Pu_Nine_91 小时前
Vue‑Flow 从零入门实战|AI‑Agent 拓扑图开发
前端·javascript·vue.js
keyipatience1 小时前
CSS 学习(1):语法、引入方式、选择器、字体与背景
前端·css·html
程序人生8881 小时前
本地向量底座怎么搭?DocConverter Web 的 BGE 嵌入模型、ChromaDB 与外部 Milvus 接入
前端·milvus