• Webpack 打包 11. eslint 语法检查


    使用 eslint 对 js 进行语法检查

    1.文件结构

    2.安装 eslint 相关插件

    $ npm i eslint@6.8.0  eslint-loader@3.0.3  eslint-plugin-import@2.20.1  eslint-config-airbnb-base@14.0.0  -D

    安装完成后,在 package.json 文件中配置 eslintConfig:

    "eslintConfig":{

      "extends":"airbnb-base"

    }

    3.代码

    index.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    
    </body>
    </html>

    index.js

    function add(x, y) {
      return x + y;
    }
    
    // 下一行 eslint 所有规则都失效(下一行不进行 eslint 检查)  加上下面这一句,就没有eslint警告信息了
    // eslint-disable-next-line
    console.log(add(1, 2));

    webpack.config.js

    const {resolve} = require('path')
    const HtmlWebpackPlugin = require('html-webpack-plugin')
    module.exports = {
        entry: './src/js/index.js',
        output: {
            filename: "js/built.js",
            path: resolve(__dirname, 'build')
        },
        module: {
            rules: [
                /*
                * 语法检查: eslint-loader  eslint
                *   注意: 只检查自己的源代码,第三方库是检查不到的
                *   设置检查规则:
                *       package.json 中 eslintConfig 中设置~
                             "eslintConfig": {
                                "extends": "airbnb-base"
                              }
    
                     * airbnb --> eslint-config-airbnb-base  eslint-plugin-import eslint
                *
                * */
                {
                    test: /\.js$/,
                    exclude: /node_modules/,
                    loader: 'eslint-loader',
                    options: {
                        //自动修复 eslint 的错误
                        fix: true
                    }
                }
            ]
        },
        plugins: [
            new HtmlWebpackPlugin({
                template: "./src/index.html"
            })
        ],
        mode: "development",
        devServer: {
            contentBase: resolve(__dirname, 'build'),
            compress: true,
            port: 3000,
            open: true
        }
    }

    4.打包

    $ webpack

    end~

  • 相关阅读:
    遂宁2017届零诊16题(仅想说明网传答案的不正确)
    当参变分离遇见洛必达
    高考数学九大超纲内容(1)wffc
    给王志红老师构造的函数,想说明搜题软件的解答过程的不严谨!
    记住路径名
    php返回文件路径
    两个字符串合并为一个字符串的各种方法
    global作用域
    二进制字符串的比较
    var_dump — 打印变量的相关信息
  • 原文地址:https://www.cnblogs.com/sener/p/16669348.html
Copyright © 2020-2023  润新知