项目背景是 使用Vue开发SPA单页面应用node
鳖废话,先上错误react
Cannot find module 'webpack/bin/config-yargs'
at Function.Module._resolveFilename (module.js:325:15)
at Function.Module._load (module.js:276:25)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (D:\my\react-task\node_modules\webpack-dev-server\bin\webpack-dev-server.js:24:1)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
......
复制代码
好吧,我认为除了最上面这句,下面的信息均可以先放到一边(绝对不是由于我看不懂才用省略号代替的).webpack
碰到错误怎么办,搜索引擎走一走,蜻蜓点水看了一圈(为了先解决问题),固然错误最后是解决了的。web
这个错误是在项目启动的时候冒出来的。在报错以前我在命令提示符里瞎操做了一通,如今都忘了当时干了什么了,反正最后的结果就是报了上面那个错,这里给自已一个'啪啪啪'。npm
根据我在网上看到的,有两种说法:json
一种说是webpack 和 webpack-dev-server版本不匹配
另外一种是webpack4以后,将config-yargs放到了webpack-cli里面去了bash
怎么看它们的版本呢?项目根目录下有一个package.json文件,里面放了项目的描述和导入的依赖包描述,而后有一个devDependencies属性,在这里面就能够看到上面三个模板依赖的版本 。webpack-dev-server
如下是个人(版本更改后的):ui
"webpack": "^3.8.0",
"webpack-bundle-analyzer": "^2.9.0",
"webpack-dev-server": "^2.9.7",
复制代码
先打开cmd,定位到你本地的项目下,而后能够尝试两种解决方案搜索引擎
npm install webpack-cli -D
npm update
复制代码
我当时版本就是 4 点几,而后执行了上面的操做,结果发现 webpack-cli 是没下成功仍是咋地,反正仍是启动失败。
嗯哼,不要紧,我还能撑。
//卸载版本
cnpm uninstall webpack -g
cnpm uninstall -g webpack-dev-server
//安装指定版本
cnpm install webpack@3.8.0 --save-dev
cnpm install webpack-dev-server@2.9.7 --save-dev
复制代码
(不要纠结 -g 在前在后,据我实验无所谓。)
这上面两个版本是不冲突的(貌似webpack3 和 webpack-dev-server2次要版本高一点的 都还匹配,我没试过,猜的)。
固然,若是到此时你仍是报错,嗯嗯嗯~。
把node_modules(在项目根目录下)删了吧,重装。
删除文件夹,在cmd中输入 nmp install。
要是再搞不定,咳咳,那要不就别搞单页面应用了吧。
over over over