Использование этого метода vue.js для входа в систему пользователей:
loginUser: function () {
socket.emit('loginUser', {
email: this.email ,
password: this.password
}, function() {
console.log('rooms in callback are:', rooms);
});
}
На сервере событие loginUser
обрабатывается:
socket.on('loginUser', (newuser,callback)=> {
var body = _.pick(newuser, ['email', 'password']);
console.log('body is:', body);
User.findByCredentials(body.email, body.password).then((user) => {
return user.generateAuthToken().then((token) => {
if (token) {
console.log('token was found');
let rooms = ['Cats', 'Dogs', 'Birds'];
callback(rooms);
} else {
socket.emit('loginFailure', {'msg' : 'Login failure'});
}
}).catch((e) => {
throw e;
});
}).catch((e) => {
socket.emit('loginFailure', {'msg' : 'Login failure'});
throw e;
});
});
Я вижу 'token was found'
напечатанов консоли, но не получает комнаты, печатаемые в консоли браузера.Я тоже не получаю ошибок.
Мне интересно, связано ли это с тем, как работают методы vue.js?И если да, то есть ли способ обойти это?