1
У меня есть функция findOrCreateUser
, которая возвращает генератор. Но когда функция завершится, мне нужно вызвать обратный вызов done
. Как мне это сделать?Как подождать выхода?
Я попробовал позвонить next()
на генераторе, но результат был отложен.
passport.use(new FacebookStrategy({
clientID: fbConfig.appId,
clientSecret: fbConfig.appSecret,
callbackURL: 'http://localhost:' + (process.env.PORT || 3000) + '/auth/facebook/callback'
},
function(token, tokenSecret, profile, done) {
var user = yield userRepository.findOrCreateUser(
profile.id,
profile.name,
'pic');
return user;
})
);
Это не похоже на работу. выход должен быть в пределах функции генератора, и я не могу это сделать, потому что функция вызывается паспортом. –
@IanWarburton Не могли бы вы использовать co в паспортной функции? – theliberalsurfer
У меня есть голубая птица. Я пытался превратить генератор в обещание, поэтому я мог бы назвать «тогда», но я не мог понять, как превратить генератор в обещание. –