【发布时间】:2019-05-24 21:24:31
【问题描述】:
昨天,我正在 MacBook 上编写 AngularJS angular-phonecat 教程。它工作得很好。 (虽然npm start 和npm test 都需要sudo 才能实际工作,这很奇怪)
今天,我将原始 repo 克隆到我的 MacBookPro 上,运行 npm install,并尝试使用 npm start 启动,但出现错误:
$ npm start
... other scripts running ...
> http-server ./app -a localhost -p 8000 -c-1
events.js:173
throw er; // Unhandled 'error' event
^
Error: getaddrinfo ENOTFOUND localhost
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:58:26)
Emitted 'error' event at:
at GetAddrInfoReqWrap.doListen [as callback] (net.js:1440:12)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:58:17)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! angular-phonecat@0.0.0 start: `http-server ./app -a localhost -p 8000 -c-1`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the angular-phonecat@0.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/TuzMacbookPro2017/.npm/_logs/2019-05-23T17_54_25_562Z-debug.log
只运行脚本的最后一行会产生类似但不太详细的错误:
$ http-server ./app -a localhost -p 8000 -c-1
events.js:173
throw er; // Unhandled 'error' event
^
Error: getaddrinfo ENOTFOUND localhost
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:58:26)
Emitted 'error' event at:
at GetAddrInfoReqWrap.doListen [as callback] (net.js:1440:12)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:58:17)
雪上加霜,当我在昨天工作的计算机上的教程应用程序的副本中运行 sudo npm start,然后访问 URL localhost:8000 时,我收到 400 错误。我无法想象自昨天以来会发生什么变化! sudo npm test 启动 Karma 测试,在两台计算机上都没有任何问题(尽管 MacBook Pro 不需要 sudo)。
当前在两台计算机上运行 npm 6.4.1。 MacBook 位于节点 10.15.3,MacBookPro 位于节点 11.12.0
更糟糕的是:我刚刚下载了一个新的 repo 克隆(直接来自 angular 网站),现在 MacBook 在运行 npm start 时出现此错误,无论有无 sudo:
> http-server ./app -a localhost -p 8000 -c-1
events.js:174
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE: address already in use 127.0.0.1:8000
at Server.setupListenHandle [as _listen2] (net.js:1270:14)
at listenInCluster (net.js:1318:12)
at GetAddrInfoReqWrap.doListen [as callback] (net.js:1451:7)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:61:10)
Emitted 'error' event at:
at emitErrorNT (net.js:1297:8)
at process._tickCallback (internal/process/next_tick.js:63:19)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! angular-phonecat@0.0.0 start: `http-server ./app -a localhost -p 8000 -c-1`
npm ERR! Exit status 1
怎么了?
【问题讨论】:
-
与您的帖子无关,但请注意;因为 AngularJS 不太可能通过新功能进一步开发;此时开始学习它可能没有意义。你更有可能从学习 Angular 中受益,虽然它的名称相同,但它是一个不同的框架。
-
谢谢。我正在学习它以准备在一个经常使用它的地方进行面试,我只是检查了工作描述,它肯定是 AngularJS,但真的感谢您的提醒!
-
尽管这个问题显然是关于 angular 而不是 angularjs,但您恢复了我的编辑,为什么?
-
是关于 AngularJS 的!我不知道角。我只知道 AngularJS。