功能上的多个承诺
Multiple promises on function
我有这个套接字,当我收到消息时,我检查用户,如果用户不存在:我添加到数组和console.log("Hey new user:" + results.get("name"))如果已经存在,我只需输入:console.log('用户已经存在!')
问题是有时我收到2个消息太快从同一用户,当这种情况发生时,解析用户检查尚未解决,并添加用户2次,我怎么能做一个承诺,等待最后的消息解决之前继续?
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!')
}
};
在回调Parse
时也要检查getIndexOf
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"));
});
}
});
相关文章:
- 主体单击删除功能上的输入框宽度
- 在接受功能上访问燃料UX标语牌中的“this”
- 承诺和上传数据
- JavaScript功能上的谷歌地图
- 点击功能上的JQuery按钮不起作用
- 在jQuery点击功能上显示特定数量的
- 使用实习生在功能上测试元素是否可见(没有元素覆盖)
- 计数功能上的数字划分
- “功能上”生成一个仅包含几个元素的列表
- 数组中的第一个视频始终是第一个或第二个在下一个视频功能上播放
- 在复选框检查的更改功能上需要计算一个值
- 在选项卡的点击功能上初始化猫头鹰轮播
- 在同一功能上使用多个按钮重定向到不同的功能
- 异常捕获在功能上是否与承诺错误回调相同
- 在页面更改功能上跳转到页面顶部
- 用于在承诺链上来回切换的Javascript模式
- JavaScript链接承诺:在上一个承诺完成之前调用下一个承诺
- 我要在鼠标悬停功能上更改 javascript 中
- 功能上的多个承诺
- 在功能上承诺拒绝