express中的App.use在连接到模型和路由时导致错误



我正在app.js页面中设置我的路由和模型。我正在使用应用程序。多次使用。然而,当我引用我的模型和路由,像这样

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。我遵循约翰·帕帕的风格指南。我在express上的一些代码非常相似。似乎在热毛巾发电机中工作得很好,但现在为我工作了。想知道它是否可能是一个不同的问题,或者如果我错过了一些具体的东西。

我要求我的模型

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

这里是我包中的依赖项。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"

任何见解将不胜感激。

谢谢

试试别的方法。在文件的顶部做:

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

然后把这个放到底部。这可能是一个位置问题,因为分配路由应该总是在其他应用程序的

下面。
app.use('/api', routes);

最新更新