当我试图用npm start命令调试我的节点应用程序时,我收到了这个错误。

Error:
npm ERR! Windows_NT 6.3.9600
npm ERR! argv "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "start"
npm ERR! node v0.12.7
npm ERR! npm  v2.11.3

npm ERR! missing script: start
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>npm ERR! Please include the following file with any support request:
npm ERR!     C:\Users\andrmoll.NORTHAMERICA\Documents\GitHub\SVIChallenge\npm-debug.log
From the debug file:
Error: missing script: start
       at run (C:\Program Files\nodejs\node_modules\npm\lib\run-script.js:142:19)
       at C:\Program Files\nodejs\node_modules\npm\lib\run-script.js:58:5
       at C:\Program Files\nodejs\node_modules\npm\node_modules\read-package-json\read-json.js:345:5
       at checkBinReferences_ (C:\Program Files\nodejs\node_modules\npm\node_modules\read-package-json\read-json.js:309:45)
       at final (C:\Program Files\nodejs\node_modules\npm\node_modules\read-package-json\read-json.js:343:3)
       at then (C:\Program Files\nodejs\node_modules\npm\node_modules\read-package-json\read-json.js:113:5)
       at C:\Program Files\nodejs\node_modules\npm\node_modules\read-package-json\read-json.js:300:12
       at evalmachine.<anonymous>:334:14
       at C:\Program Files\nodejs\node_modules\npm\node_modules\graceful-fs\graceful-fs.js:102:5
       at FSReqWrap.oncomplete (evalmachine.<anonymous>:95:15)

当前回答

确保端口是打开的

var app = express();
app.set('port', (process.env.PORT || 5000));

诸如此类,最后你得到了这个

app.listen(app.get('port'), function() {
    console.log("Node app is running at localhost:" + app.get('port'))
});

在node js中仍然是一个新手,但这导致了更多的这种情况。

其他回答

我已经解决了我的问题。这不是一个NPM错误,它与代理行为有关。

如果你不支持代理,

MAC
 1.  Goto System Preference (gears icon on your mac)
 2.  click your network
 3.  click advanced
 4.  click proxy
 5.  check excludes simple hostnames
 6.  add this line below (Bypass Proxy Settings...) "localhost, localhost:8080"

refer to the npm echo: "Project is running at http://localhost:8080/"

Windows
 1.  Goto your browser Proxy Settings (google it)
 2.  check Bypass local address
 3.  add this line below "localhost, localhost:8080"

当我尝试运行"npm run start"时,我得到了同样的错误

我的项目应该以npm run serve启动

如果你复制一个github项目,你可以看看项目设置,就像这样:

所以一定要确保你用正确的命令运行它,在我的例子中是

npm run serve

对于我的例子,我在“First”文件夹中创建了React项目,我在这个文件夹中运行项目,所以我看到了同样的错误。你应该进入项目,然后你应该运行(为我的例子“反应电影”)。如果你看我的屏幕,你可以很容易地发现。

npm rm -g create-react-app
npm install -g create-react-app
npx create-react-app my-app

重要:确保你需要更改目录到my-app,然后点击“npm start”

正如您在图像中所看到的,有一个错误,在更改目录后修复了这个错误。

看起来您可能没有在包中定义开始脚本。Json文件或您的项目不包含server.js文件。

如果在你的包的根目录中有一个server.js文件,那么npm将默认启动命令到node server.js。

https://docs.npmjs.com/misc/scripts#default-values

您可以将应用程序脚本的名称更改为server.js,或者将以下内容添加到package.json中

"scripts": {
    "start": "node your-script.js"
}

还是……你可以直接运行node your-script.js