meteorjs meteor用户状态mizzao包:无法获取其他用户
正在尝试实现mizzao/meteor用户状态用户状态包,但仅获取当前登录用户(me)的状态。其他显示未定义 /server文件夹中的代码: Meteor.publish('userStatus',function(){ 返回Meteor.users.find({ “在线状态”:正确 });meteorjs meteor用户状态mizzao包:无法获取其他用户,meteor,Meteor,正在尝试实现mizzao/meteor用户状态用户状态包,但仅获取当前登录用户(me)的状态。其他显示未定义 /server文件夹中的代码: Meteor.publish('userStatus',function(){ 返回Meteor.users.find({ “在线状态”:正确 }); });我猜您正在尝试在订阅准备就绪之前读取用户 服务器: Meteor.publish('userStatus', function() { return Meteor.users.find({
});代码>我猜您正在尝试在订阅准备就绪之前读取用户 服务器:
Meteor.publish('userStatus', function() {
return Meteor.users.find({
"status.online": true
}, {
fields:{
_id: 1,
status: 1,
profile: 1,
username: 1
// Any other fields you may need
}
});
});
客户端(您应返回游标,一旦订阅就绪,游标将重新运行):
如果您有这样的出版物:
Meteor.publish('userStatus', function() {
return Meteor.users.find({
"status.online": true
});
});
它将返回仅联机的用户。因此,除您之外的用户没有定义,因为他们没有登录
尝试同时以其他用户身份登录(即使用不同的浏览器),然后查看您现在是否可以看到该用户的状态
您始终可以将出版物更改为:
Meteor.publish('userStatus', function() {
return Meteor.users.find({}, {fields: {username : 1, status : 1}});
});
您将获得所有用户的状态。但是如果您只需要检查“联机”标志(即您不需要包的其他特征),最好只发送关于在线用户的数据,并将未发布的用户视为脱机。对不起,仍然只将我作为用户而忽略他人。如果有帮助的话,我已经删除了自动发布和不安全。工作很有魅力。只是好奇——这个答案和下面我的有什么不同?
Meteor.publish('userStatus', function() {
return Meteor.users.find({}, {fields: {username : 1, status : 1}});
});