【问题标题】:How to install eslint-config-airbnb properly ? `UNMET PEER DEPENDENCY`如何正确安装 eslint-config-airbnb? `未满足的同行依赖`
【发布时间】:2017-07-06 09:58:45
【问题描述】:
➜  beslint git:(master) ✗ eslint -v
    v3.15.0
➜  beslint git:(master) ✗ npm install -g eslint-config-airbnb eslint-plugin-jsx-a11y eslint-plugin-import eslint-plugin-react

/Users/next/.nvm/versions/node/v7.5.0/lib
├── UNMET PEER DEPENDENCY eslint@^3.15.0
├─┬ eslint-config-airbnb@14.1.0
│ └── UNMET PEER DEPENDENCY eslint@^3.15.0
├── eslint-plugin-import@2.2.0
├── eslint-plugin-jsx-a11y@4.0.0
└── eslint-plugin-react@6.10.0

npm WARN eslint-config-airbnb@14.1.0 requires a peer of eslint@^3.15.0 but none was installed.
npm WARN eslint-config-airbnb-base@11.1.0 requires a peer of eslint@^3.15.0 but none was installed.
npm WARN eslint-plugin-import@2.2.0 requires a peer of eslint@2.x - 3.x but none was installed.
npm WARN eslint-plugin-jsx-a11y@4.0.0 requires a peer of eslint@^2.10.2 || 3.x but none was installed.
npm WARN eslint-plugin-react@6.10.0 requires a peer of eslint@^2.0.0 || ^3.0.0 but none was installed.
➜  beslint git:(master) ✗
  • 全局安装累了
  • 我用nvm安装node 7.5.0,全局安装eslint。
  • 当我尝试全局安装 eslint-config-airbnb 时。
  • 上面写着UNMET PEER DEPENDENCY

【问题讨论】:

  • 你试过... 安装依赖?
  • WARN 是否显示了我必须安装的内容?我以为我已经在全球范围内安装了符合要求的 eslint。我错了吗?

标签: javascript npm eslint


【解决方案1】:

您可以安装eslint-config-airbnb-bundle。这是一个未更改 Airbnb 风格指南配置,与 ESLint 捆绑在一个包中,以解决安装时的一些不便(如未满足的对等依赖警告)。您也可以全局安装它:

npm i -g eslint-config-airbnb-bundle

仅限爱彼迎:https://www.npmjs.com/package/eslint-config-airbnb-bundle

Airbnb + 标准:https://www.npmjs.com/package/eslint-config-airbnb-standard

【讨论】:

    【解决方案2】:

    我遇到了类似的问题,但找到了解决此问题的方法。我认为它值得分享。

    要安装每个包相关 eslint config 的正确版本, 您可以运行以下命令:

    npm info "eslint-config-airbnb@latest" peerDependencies
    

    您可以通过运行上述命令获得精确的对等依赖关系:

    例如关于输出(截至回答日期)将产生以下结果:

    { eslint: '^3.19.0 || ^4.3.0',
      'eslint-plugin-jsx-a11y': '^5.1.1',
      'eslint-plugin-import': '^2.7.0',
      'eslint-plugin-react': '^7.1.0' 
    }
    

    从上面的输出中,您可以准确了解要为当前(最新版本)安装哪些依赖项。

    如果您想一次性安装所有依赖项(仅适用于 Linux/OSX 用户) 使用以下命令:

    (
      export PKG=eslint-config-airbnb;
      npm info "$PKG@latest" peerDependencies --json | command sed 's/[\{\},]//g ; s/: /@/g' | xargs npm install --save-dev "$PKG@latest"
    )
    

    更多详情here.

    【讨论】:

      【解决方案3】:

      来自https://www.npmjs.com/package/eslint-config-airbnb

      npx install-peerdeps --dev eslint-config-airbnb
      

      【讨论】:

        【解决方案4】:

        我认为您不应该在全局范围内安装所有内容。试试这个:

        npm install --save-dev eslint eslint-config-airbnb eslint-plugin-jsx-a11y eslint-plugin-import eslint-plugin-react

        【讨论】:

          【解决方案5】:

          删除节点模块 (rm -rf node_modules/) 并重新运行 npm install 对我有用!!

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2023-03-14
            • 1970-01-01
            • 1970-01-01
            • 2017-07-06
            • 2017-11-17
            • 1970-01-01
            • 2023-03-16
            • 1970-01-01
            相关资源
            最近更新 更多