错误原因
这几天在学习react,跟着慕课网的视频学习。
React实战--打造画廊应用(上)
React实战--打造画廊应用(下)
在用yeoman最初构建项目,完成后需要启动项目。
运行npm start
时,出现了错误:
> @0.0.1 start E:\workspace\loveGallery-by-react
> node server.js --env=dev
module.js:471
throw err;
^
Error: Cannot find module 'core-js/fn/object/assign'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (E:\workspace\loveGallery-by-react\server.js:3:1)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
npm ERR! Windows_NT 10.0.14393
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "start"
npm ERR! node v6.9.1
npm ERR! npm v3.10.8
npm ERR! code ELIFECYCLE
npm ERR! @0.0.1 start: `node server.js --env=dev`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the @0.0.1 start script 'node server.js --env=dev'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node server.js --env=dev
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! E:\workspace\loveGallery-by-react\npm-debug.log
看了一下Error,是说找不到core-js/fn/object/assign这个文件。Error: Cannot find module 'core-js/fn/object/assign'
我在server.js文件中看到这样句代码require('core-js/fn/object/assign');
。应该是需要引入这个moudle,我在项目文件夹node_modules中,没有找到core-js文件。所以应该是缺少这个moudle。
解决方案
找到原因就可以针对解决。好了少了core-js,那咱们就安装这个。运行npm install -g core-js
进行安装,因为这个需要访问国外的网站安装,所以特别慢,等待安装完了之后。再运行npm start
,但是还报错误。去node_modules文件夹下看,还是没有。
这下不知道怎么解决了,然后找网上的解决方案,有一种方式说运行npm install
,然后拿来就试,但是运行之后因为网速和墙的原因,特别慢,而且还报一些错误,安装完成后,再看node_modules文件夹中,还是没有core-js文件。这下就彻底没招了,这可怎么解决。
没招也不能放弃啊,继续上网找吧。找到一个说使用npm在国内安装模块很慢,有时候还不成功,推荐使用淘宝npm镜像,我就想项目中缺少那个模块是不是就是因为npm安装模块出了问题,没有安装上?
所以就尝试以下这个淘宝npm镜像-cnpm。
npm install -g cnpm --registry=https://registry.npm.taobao.org
通过这个命令安装cnpm,之后运行cnpm install
进行模块下载、安装。紧接着就会看到它会下载一堆东西到node_modules文件夹下,其中就会有core-js文件夹,然后运行npm start
,果真项目正常启动。终于解决了这个问题。虽然我现在也不知道我这样解决是不是正道,也不知道有没有找到最根本的原因。
将这个写成文章做个记录,如果有人和我的情况类似,我这样的解决方法也可已作为一个尝试;还有就是说出来之后要是有更懂的人,可以看一看我这样的解决办法对不对。
主要还是作为交流。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。