node js npm start error

时间:2016-06-18 04:25:14

标签: javascript node.js express passport.js

我按照本教程MEAN STACK

开始学习nodejs

现在我在模块3,当我启动npm start命令。我收到以下错误。 这是错误:pastebin

2 个答案:

答案 0 :(得分:2)

您必须忘记在package.json文件中定义启动脚本。它应该是这样的。

"scripts": {
"start": "node ./bin/www"
},

文章定义得很好。看看Here

答案 1 :(得分:0)

收到的第一个错误是当它运行脚本并且脚本失败时抛出的通用npm错误。在这种情况下,./bin/www脚本失败,如第一个stack trace第29到31行所示:

> 17 error module-3@0.0.0 start: `node ./bin/www`
> 17 error Exit status 1
> 18 error Failed at the module-3@0.0.0 start script 'node ./bin/www'.

使用> node ./bin/www直接从命令行运行脚本,确认脚本在执行时抛出错误。

  

错误:Route.post()需要回调函数,但得到了[object Object]

这似乎是post方法正在接收一些非function参数。我会查找引用此项目代码的堆栈跟踪行,因为route.js是来自Express框架的一些完善的代码。

  

at module.exports(C:\ Users \ prk \ Documents \ Learn node.js \ MEAN MVA \ module-3 \ routes \ authenticate.js:16:12)

根据Express documentation,除{1}之外的Router.post()方法的所有参数都必须是函数。似乎此行发生的任何事情都会将非function值传递给Router.post。如果它紧跟git repo,看起来像passport.authenticate()正在返回一个对象而不是一个函数。您需要执行更多调试才能找到答案。