如何删除 eslint 插件 eslint-plugin-jsx-a11y?

use*_*238 7 javascript ecmascript-6 reactjs eslint eslint-config-airbnb

我为我的 React 项目设置了 eslint(Airbnb 编码风格),它依赖于“eslint-plugin-jsx-a11y”,我不想要我当前的项目。

我的问题是如何删除这个特定的插件“eslint-plugin-jsx-a11y”。

当我卸载“eslint-plugin-jsx-a11y”时,它会出现以下错误:

“加载插件 jsx-a11y 失败:找不到模块‘eslint-plugin-jsx-a11y’”

有没有办法解决上述问题?

Web*_*her 6

如果您明确包含插件,Alberto Perez 的答案是有效的jsx-a11y。但是如果你扩展另一个包含jsx-a11y他的方法的插件就不起作用了。

如果是这样你可以使用这个:

第一个解决方案

https://github.com/mradionov/eslint-plugin-disable

目前还不支持eslint@8。看问题

第二种解决方案

https://github.com/airbnb/javascript/issues/2032#issuecomment-568934232

const a11yOff = Object.keys(require('eslint-plugin-jsx-a11y').rules)
    .reduce((acc, rule) => { acc[`jsx-a11y/${rule}`] = 'off'; return acc }, {})

module.exports = {
    rules: {
        ...a11yOff,
        // your rules
    },
}
Run Code Online (Sandbox Code Playgroud)


Alb*_*rez 5

首先,您需要删除eslint-plugin-jsx-a11y对您的插件 ( )的引用.eslintrc(这就是为什么当您卸载它时,eslint 配置会给您一个错误):

  1. extends(如果有)中搜索和删除plugin:jsx-a11y/recommended
  2. plugins: 中搜索和删除jsx-a11y
  3. 然后rules删除所有涉及的规则jsx-a11y(例如:)"jsx-a11y/rule-name": 2
  4. 最后你可以从项目中删除它:npm uninstall eslint-plugin-jsx-a11y --save-dev.

PS:如果你有任何disable声明eslint-plugin-jsx-a11y,记得删除它(它们不再需要了)