在使用app.resource时,我找不到包含任何深度的任何体面文档。
我能找到的唯一信息是在当前文件中创建变量。 Here
我目前的代码如下:
var favs = app.resource('favs', require('./modules/favs'));
favs.map('get', '/user', favs.buses);
然而它回来说这是未定义的?
在我喜欢的模块中。
exports.buses = function (req, res) {
res.render('favs/buses', {
title: 'Bus Stops'
});
});
答案 0 :(得分:5)
favs.js
中存在语法错误:最后一个右括号)
是多余的。
除此之外,您似乎将实际模块与从app.resource
返回的资源对象混淆。您希望在访问者访问路径时传递对要调用的请求处理程序的引用(在您的情况下为/favs/user
)。所以你想要的是:
var favs = require('./modules/favs'),
favsResource = app.resource('favs', favs);
favsResource.map('get', '/user', favs.buses);
如果您对express-resource
处理时感到有些失落,我建议您先使用普通快递,只有在您更熟悉快递如何工作时才开始使用快递资源。 TJ的辅助模块往往缺乏文档,只有在您习惯阅读代码IMO时才应该使用它们。