【问题标题】:ESLint: set custom formatter in .eslintrc.jsESLint:在 .eslintrc.js 中设置自定义格式化程序
【发布时间】:2023-03-26 19:14:01
【问题描述】:

我正在使用带有 craco 的 create-react-app (Create-React-App-Configuration-Override)

Craco 不是很奇特。它只是让我use my own eslintrc file with create-react-app

我正在尝试使用自定义的 eslint 格式化程序,特别是 eslint-formatter-friendly 可以满足我的需要(通过 iTerm/Guake 终端链接到行号的文件),但是有很多替代格式化程序:http://npmsearch.com/?q=eslint-formatter

我尝试在我的 .eslintrc.js 文件中设置 format: 'unix'formatter: 'unix' - 但这不起作用,eslint 明确给出了一个错误,提示类似“无法识别的顶级属性”。

【问题讨论】:

    标签: create-react-app eslint eslintrc eslint-loader craco


    【解决方案1】:

    我寻找可以在 .eslintrc.js 文件中指定格式化程序的任何方法,但我发现这不是一个选项。在搜索并扫描了 gulp-eslint、eslint-grunt 和 grunt-eslint 的源代码后,我最终更仔细地查看了 for craco 的源代码——其中读取了一些 eslint 配置:https://github.com/sharegate/craco/blob/master/recipes/use-an-eslintrc-config-file/craco.config.js

    处理这个的源:https://github.com/sharegate/craco/blob/master/packages/craco/lib/features/webpack/eslint.js

    我需要做的就是使用这个 craco.config.js:

    /* globals module */
    const { ESLINT_MODES } = require("@craco/craco");
    const reactHotReloadPlugin = require('craco-plugin-react-hot-reload');
    
    module.exports = {
        plugins: [{
            plugin: reactHotReloadPlugin
        }],
        eslint: {
            mode: ESLINT_MODES.file,
            loaderOptions: {
                formatter: require("eslint-formatter-friendly")
            }
        },
    };
    

    【讨论】:

    猜你喜欢
    • 2014-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-03
    • 2012-01-24
    • 1970-01-01
    • 2018-02-15
    相关资源
    最近更新 更多