我有这个套接字,当我收到一条消息时,我检查用户,如果用户不存在: 我添加到array和console.log("嘿,新用户:" + results.get(" name")) 如果已经存在我只是把: console.log('用户已经存在!')
问题是有时我从同一个用户那里收到2条消息太快,当发生这种情况时,Parse用户检查还没有解决,并且用户2次添加用户怎么做承诺等待最后继续消息解决? / p>
socket.onmessage = function(dataObject)
{
var obj = JSON.parse(dataObject.data);
user = obj.user;
var index = getIndexOf($scope.users, user);
if(index === false)
{
Parse.getUser(user).then(function(results)
{
$scope.addUser(results.id, results.get("name"), results.get("image")).then(function()
{
console.log("Hey new user:" + results.get("name"))
});
});
}
else
{
console.log('User Already Exist!')
}
};
答案 0 :(得分:1)
同时对getIndexOf
的回调内部进行Parse
检查。
Parse.getUser(user).then(function(results)
{
if (getIndexOf($scope.users, results) === false) {
$scope.addUser(results.id, results.get("name"), results.get("image")).then(function()
{
console.log("Hey new user:" + results.get("name"));
});
}
});