私はPHPのバックグラウンドを持っており、node.jsを使い始めました。私がやっているほとんどのことは大丈夫ですが、同期と非同期およびスコープに関しては、頭を包み込むのに苦労していることがいくつかあります。
これは非常に簡単な例です。
app.get('/register/:invite_id?' function(req, res) {
var agent = superagent.agent();
var form = {};
agent.post('127.0.0.1/invite/' + req.params.invite_id + '/details')
.end(function(invite_error, invite_details) {
form.email = invite_details.body.user.email;
//I can console.log form.email here
});
// I cannot console.log form.email here.. i get undefined.
// I need to access form.email here, so I can pre-populate my form field below...
// Sometimes however that agent.post may take 2-3 seconds
res.render('user/register', {
form: form
});
});