javascript node.js next()
2022-08-30 02:06:10
我看到node.js中有很多用处。next
它是什么,它来自哪里?它有什么作用?我可以在客户端使用它吗?
对不起,它在这里使用例如:http://dailyjs.com/2010/12/06/node-tutorial-5/
查找 loadUser 函数。
我看到node.js中有很多用处。next
它是什么,它来自哪里?它有什么作用?我可以在客户端使用它吗?
对不起,它在这里使用例如:http://dailyjs.com/2010/12/06/node-tutorial-5/
查找 loadUser 函数。
这似乎是 Node.js 控制流代码中的变量命名约定,其中对要执行的下一个函数的引用被赋予回调,以便在完成后启动。
例如,请参阅此处的代码示例:
让我们看看你发布的例子:
function loadUser(req, res, next) {
if (req.session.user_id) {
User.findById(req.session.user_id, function(user) {
if (user) {
req.currentUser = user;
return next();
} else {
res.redirect('/sessions/new');
}
});
} else {
res.redirect('/sessions/new');
}
}
app.get('/documents.:format?', loadUser, function(req, res) {
// ...
});
该函数需要在其第三个参数中包含一个函数,该参数绑定到名称 。这是一个正常的函数参数。它包含对要执行的下一个操作的引用,并在完成后调用(除非找不到用户)。loadUser
next
loadUser
在此示例中,名称没有什么特别之处;我们可以给它起任何名字。next
它是在需要串行执行操作的情况下传递回调时使用的命名约定,例如扫描目录 ->读取文件数据 ->对数据执行某些操作。这优先于深度嵌套回调。Tim Caswell的HowToNode博客上以下文章的前三个部分对此进行了很好的概述:
http://howtonode.org/control-flow
另请参阅该发布第二部分的“顺序操作”部分: