如何正确安装eslint-config-airbnb? `UNMET PEER DEPENDENCY`

时间:2017-02-17 02:32:01

标签: javascript npm eslint

➜  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

5 个答案:

答案 0 :(得分:3)

您可以安装eslint-config-airbnb-bundle。这是与ESLint捆绑在一起的未经更改的 Airbnb样式指南配置,以解决安装带来的一些不便(如未完成的对等依赖项警告)。您也可以在全球范围内安装它:

npm i -g eslint-config-airbnb-bundle

仅限Airbnb:https://www.npmjs.com/package/eslint-config-airbnb-bundle

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

答案 1 :(得分:2)

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

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

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

答案 2 :(得分:1)

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

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

答案 3 :(得分:0)

删除节点模块(rm -rf node_modules/)并重新运行npm install为我工作!!

答案 4 :(得分:-1)

我认为你不应该把全局安装在一起。试试这个:

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