我在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'
});
});
最佳答案
favs.js
中有语法错误:最后一个右括号是多余的。
除此之外,您似乎将实际模块与从)
返回的资源对象合并在一起。您希望在访问者访问路径时(在您的情况下,app.resource
)传递对要调用的请求处理程序的引用。所以你想要的是:
var favs = require('./modules/favs'),
favsResource = app.resource('favs', favs);
favsResource.map('get', '/user', favs.buses);
如果您在处理
/favs/user
时感到有点不知所措,我建议您从普通的express开始,只有在您更熟悉express的工作原理时才开始使用express资源。TJ的助手模块有一种缺乏文档的倾向,只有在阅读代码时感到舒服时才应该使用它们,IMO。