练习项目npm start启动时报错的个人解决办法

错误原因

这几天在学习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,果真项目正常启动。终于解决了这个问题。虽然我现在也不知道我这样解决是不是正道,也不知道有没有找到最根本的原因。
将这个写成文章做个记录,如果有人和我的情况类似,我这样的解决方法也可已作为一个尝试;还有就是说出来之后要是有更懂的人,可以看一看我这样的解决办法对不对。
主要还是作为交流。

    原文作者:简以凝
    原文地址: https://segmentfault.com/a/1190000007505688
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞