【问题标题】:app.use in express is causing error when connecting to a model and route连接到模型和路线时,快递中的 app.use 会导致错误
【发布时间】:2015-10-15 21:04:04
【问题描述】:

我正在 app.js 页面中设置我的路线和模型。我多次使用 app.use 。但是,当我像这样引用我的模型和路线时

app.use('/api', require('./routes/api'));

我收到了错误

throw new TypeError('Router.use() requires middleware function but got a
            ^
TypeError: Router.use() requires middleware function but got a Object

我对 '/api' 的任何引用都会给我一个 app.use 错误。我正在关注 John Papa 风格指南。我在 express 上的一些代码非常相似。似乎在热毛巾发生器中工作正常,但现在为我工作。想知道这是否可能是一个不同的问题,或者我是否遗漏了一些具体的东西。

我需要我的模型

var BeerList = require('./models/IBU');
var Beer = require('./models/beerName');

这是我的 package.json 中的依赖项 没有什么特别的

"body-parser": "^1.8.2",
"express": "^4.12.2",
"express-session": "^1.11.3",
"mongoose": "^4.1.11",
"morgan": "^1.1.1",
"serve-favicon": "^2.0.1"

任何见解将不胜感激。

谢谢

【问题讨论】:

    标签: mongodb express mongoose middleware


    【解决方案1】:

    尝试不同的方式。在文件顶部执行:

    var routes = require('./routes/api');
    

    然后把它放在底部。这可能是位置问题,因为分配路线应始终低于其他 app.use 的

    app.use('/api', routes);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-22
      • 2017-09-17
      • 1970-01-01
      • 2016-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多