我是新来的node.js,请高手帮忙。 我正在准备基于node.js + AWS Cognito + Facebook登录进行用户同步的代码。我试过link的一个例子。router.use TypeError:无法读取未定义的属性'use'
每一步运行平稳,直到部分
var express = require('express');
var router = express.Router();
var passport = require('passport');
...
router.use(passport.initialize());
...
“脸谱与护照唱”在例如添加这一部分之后,我跑“故宫开始”,以下错误出现:
C:\workspace\nodejs\CognitoExample\routes\index.js:35
router.use(passport.initialize());
^
TypeError: Cannot read property 'use' of undefined
“无法读取属性”的含义是什么?如何解决这个问题? 提前致谢。
一些专家后在这里帮助,我可以解决这个问题:
- 重新安装快车
我用NPM安装-g表达发电机@昨天下午3命令,所以它使我的全球设置表达版本3.我首先卸载并安装Express。
npm uninstall -g [email protected]
npm uninstall -g express
npm install -g express
npm install -g express-generator
- 删除本地node_modules
执行步骤1后,同样的问题依然存在,我发现我在安装之前本地工作文件夹快车3.x的,所以我创建了一个新的工作文件夹,重新启动示例代码,问题不存在
replace var express = require('express');用var express = require('express')(); – Ben
您使用什么版本的Express? –
thx为您提供帮助,修改后需要('express')();错误消息移动到以下行,TypeError:express.Router不是函数 –