JDi*_*522 25 javascript express
好吧,这对任何人都应该很容易指出.
我检查了其他类似的问题,没有人帮忙.
我正在尝试将所有路由移动到单独的routes.js文件中.在其中我有:
module.exports = function (app) {
var user = {
list : require('./routes/user.js')
}
, index = {
index : require('./routes/index.js')
}
app.get('/', function(request, response){
response.send('You made it to the home page.')
});
app.get('/users', user.list);
}
Run Code Online (Sandbox Code Playgroud)
在我的app.js文件中我有这个:
var register_routes = require('./routes.js')
register_routes(app)
Run Code Online (Sandbox Code Playgroud)
我的索引路由工作正常,但它会重新启动app.get('/users', user.list);此错误:
.get()需要回调函数但得到一个[object Object]
这是一个开箱即用的快递应用程序,因此不能描述太多.
谢谢.
编辑:每个请求,这里是./routes/user.js:
exports.list = function(req, res){
res.send("respond with a resource");
};
Run Code Online (Sandbox Code Playgroud)
t.n*_*ese 19
使用list具有函数值的键导出对象.
因此,要访问您的功能,您需要执行此操作 require('./routes/user.js').list
或者使用您的代码user.list.list.
要解决这个问题,您有两种可能性.
写道:
var user = {
list : require('./routes/user.js').list
}
Run Code Online (Sandbox Code Playgroud)
要么:
module.exports = function(req, res){
res.send("respond with a resource");
};
Run Code Online (Sandbox Code Playgroud)
编辑
如果你routes/user.js以后可能会这样:
module.exports.list = function(req, res){
res.send("respond with a resource");
};
module.exports.delete = function(req, res){
res.send("delete user");
};
Run Code Online (Sandbox Code Playgroud)
如果是,那么你可以这样写routes.js:
var user = require('./routes/user.js');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
57269 次 |
| 最近记录: |