[email protected] requires a peer of webpack@2 || 3 but none was installed
安装所有node_modules时遇到此问题。 这让我发疯。
[email protected] requires a peer of webpack@2 || 3 but none was
installed.
这是我的package.json文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | { "name":"react-router-firebase-auth", "version":"0.1.0", "private": true, "devDependencies": { "babel-core":"^6.26.0", "babel-loader":"^7.1.2", "babel-plugin-transform-es2015-modules-commonjs":"^6.26.0", "babel-preset-es2015":"^6.24.1", "babel-preset-react":"^6.24.1", "react-scripts":"0.9.5" }, "dependencies": { "@atlaskit/button":"3.0.0", "@atlaskit/css-reset":"1.1.4", "@atlaskit/field-text":"4.0.1", "@atlaskit/modal-dialog":"2.1.1", "@atlaskit/page":"4.0.1", "@atlaskit/util-shared-styles":"2.3.1", "@shopify/polaris":"^1.5.1", "babel-eslint":"^7.0.0", "bootstrap":"^3.3.7", "eslint":"3.16.1", "eslint-plugin-react":"6.4.1", "express":"^4.16.1", "firebase":"^4.5.0", "firebase-admin":"^5.4.1", "firestore":"^1.1.6", "fixed-data-table":"^0.6.4", "griddle-react":"^1.8.1", "jquery":"^3.2.1", "node-localstorage":"^1.3.0", "nodemon":"^1.12.1", "react":"^15.5.3", "react-bootstrap":"^0.31.3", "react-bootstrap-button-loader":"^1.0.8", "react-bootstrap-navbar":"^1.1.0", "react-data-grid":"^2.0.59", "react-date-picker":"^6.1.2", "react-dom":"^15.5.3", "react-fontawesome":"^1.6.1", "react-router-dom":"^4.0.0-beta.8", "react-scripts":"^0.9.5", "react-transition-group":"^1.2.0", "reactstrap":"^4.8.0", "requestify":"^0.2.5", "simple-react-bootstrap":"^0.2.7", "styled-components":"1.4.6", "url":"^0.11.0" }, "scripts": { "start":"react-scripts start", "build":"react-scripts build", "test":"react-scripts test --env=jsdom", "eject":"react-scripts eject" } } |
我正在为此项目使用
请阅读这篇文章。它描述了对等依赖性。
https://stackoverflow.com/a/34645112/2379376
这意味着您根本没有安装webpack或安装了其他版本(webpack 1.x)。但是此插件需要版本2或3中的webpack才能正常运行。
你能做的是
1 | npm install webpack -g |
因此,npm将在您的系统上安装最新版本的webpack。
但是现在,当其他加载器需要较旧版本的Webpack时,可能会出现其他对等警告。
在节点环境和开发环境中(作为开发依赖项)全局安装webpack。
webpack的主要功能是捆绑JavaScript文件以供浏览器使用。每次在开发时对index.js(npm的入口点)进行更改时,都必须运行webpack在bundle.js文件中进行更改,因此我们需要同时安装环境(即节点环境和开发环境)
运行以下命令以解决该问题:
1 2 | npm install -g webpack@3.10.0 npm install --save-dev webpack@3.10.0 |
在这里,我正在为Webpack使用3.10.0。您也可以使用4。我认为这会有所帮助。
使用Webpack 4时:
我遇到了同样的错误,但实际上安装了webpack 4。为了解决这个问题,我使用了babel-loader文档中的说明,并安装了以下额外的库:babel-loader,@ babel / core和@ babel / preset-env。
安装所有必需库的命令:
1 | npm install -D babel-loader @babel/core @babel/preset-env webpack |
安装之前package.json devDependencies:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | "devDependencies": { "chai":"^4.1.2", "enzyme":"^3.2.0", "enzyme-adapter-react-16":"^1.1.0", "expect":"^22.0.3", "jest-junit":"^3.3.0", "jest-junit-reporter":"^1.1.0", "node-sass":"^4.9.2", "prop-types":"^15.6.0", "react-test-renderer":"^16.2.0", "redux-mock-store":"^1.4.0", "sass-loader":"^6.0.6", "webpack":"^4.25.1", "webpack-cli":"^3.1.2", "webpack-dev-server":"^3.1.10" } |
安装后:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | "devDependencies": { "@babel/core":"^7.1.6", "@babel/preset-env":"^7.1.6", "babel-loader":"^8.0.4", "chai":"^4.1.2", "enzyme":"^3.2.0", "enzyme-adapter-react-16":"^1.1.0", "expect":"^22.0.3", "jest-junit":"^3.3.0", "jest-junit-reporter":"^1.1.0", "node-sass":"^4.9.2", "prop-types":"^15.6.0", "react-test-renderer":"^16.2.0", "redux-mock-store":"^1.4.0", "sass-loader":"^6.0.6", "webpack":"^4.25.1", "webpack-cli":"^3.1.2", "webpack-dev-server":"^3.1.10" } |
希望能帮助到你