1. 程式人生 > >webpack-dev-server.js:405 throw e;

webpack-dev-server.js:405 throw e;

一開始裝webpack建議先裝低一點版本,所以npm i -D [email protected] 裝了個3.12版本的,然後裝了webpack-dev-server
配置如下:
{
  "name": "WebPack",
  "version": "1.0.0",
  "description": "",
  "main": "webpack.config.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "dev": "webpack",
    "start"
: "webpack-dev-server" }, "keywords": [], "author": "", "license": "ISC", "devDependencies": { "babel-core": "^6.26.3", "babel-loader": "^7.1.4", "babel-preset-react": "^6.24.1", "html-webpack-plugin": "^3.2.0", "webpack": "^3.12.0", "webpack-dev-server": "^3.1.4" },
"dependencies": { "react": "^16.4.1", "react-dom": "^16.4.1" } }
然後執行npm run start提示要安裝webpack-cli,然後就裝唄 npm i -D webpack-cli,裝出來是
"webpack-cli": "^3.0.8",執行npm run start又報了個錯

 
> webpack-dev-server

xx/web/node_modules/_webpack-dev-server@3.12@webpack-dev-server/bin/webpack-dev-server.js:405
throw e; ^ TypeError: Cannot read property 'compile' of undefined
網上搜了一下發現可能是webpack的版本與webpack-dev-server版本不匹配導致的,webpack-dev-server如果是3.X的話,webpack必須是4.x才不會報
TypeError: Cannot read property 'compile' of undefined
這個錯誤,同理如果webpack是3.x,則webpack-dev-server必須是2.x 
於是將webpack解除安裝npm uninstall webpack然後再npm install webpack這時候裝上去的預設是最新的版本,我此次裝的是4.14版本,然後再次npm run start就可以正常運行了