Вот странная ошибка, которую я испытываю. Во-первых вот мой кодСтранная ошибка с Accounts.onCreatedUser
User = {};
User._defaults = {
emails : [],
enabled : true
}
User.defaults = function(){
var defaults = _.clone(User._defaults);
return _.extend(defaults,{
createdAt : new Date()
});
}
Accounts.onCreateUser(function(options, user){
console.log(User.defaults());
// returns {emails: [ { address: '[email protected]', verified: true } ], enabled: true}
_.defaults(user, User.defaults());
user.emails.push(user.services.linkedin.emailAddress);
return user;
});
Как вы можете видеть, когда я называю User.defaults()
он возвращает объект с emails
массив, заполненный адрес электронной почты предыдущего нового использования.
Но что еще страннее, что когда я делаю это:
Accounts.onCreateUser(function(options, user){
console.log(User._defaults, User.defaults());
user.enabled = true;
user.emails = [];
user.createdAt = new Date();
// _.defaults(user, User.defaults());
user.emails.push(user.services.linkedin.emailAddress);
return user;
})
Вошедший User.defaults()
фактически возвращает объект с emails
массив пуст.
У кого-нибудь есть идея, что может вызвать это?
Спасибо!