0

我想将我的用户状态更新为在线,这意味着运行此代码(咖啡脚本......)

Meteor.users.update _id: Meteor.user()._id, $set: 'profile.idle': true, 'profile.online': true if Meteor.user()?

我不知道把它放在哪里,(可以把它放在客户端吗?)即使用户之前已经登录,这段代码在登录用户的情况下肯定会在哪里运行?

从小谷歌搜索我发现流星开始事件不是地方,是什么地方?

4

1 回答 1

1

Deps.autorun 块中的客户端会这样做

在 js 中会是这样的

Deps.autorun(function(){
   if(Meteor.user()){
       Meteor.users.update(Meteor.userId(),{$set:{<your fields here>}});
   }
});

--

如果您试图检测用户在线并且可以使用陨石,您可能需要查看https://atmosphere.meteor.com/package/profile-online

您也可以自己滚动,通过设置Meteor.setInterval每 10 秒左右调用一次来lastSeen为用户更新时间,然后检测用户是否在线lastSeen > timeNow - userTimeout[60 seconds?]

于 2013-04-19T18:26:53.297 回答