我从编写meteorjs网页开始。我从排行榜的例子开始。这非常有效。我添加了一些新功能。我添加了一个jquery通知脚本。 (Noty http://ned.im/noty/)
当我给一个人五分时,使用此代码激活Noty插件
var n = noty({text: txt,timeout: 2000});
......
Template.leaderboard.events({
'click input.inc': function () {
Players.update(Session.get("selected_player"), {$inc: {score: 5}});
notje("Er heeft iemand een score gegeven");
Method.call("callHouse");
},
通知只会显示给我的浏览器,而不会显示给其他用户。如何向所有活动用户使用通知。 用户 - >服务器 - >所有用户
我希望你能帮我解决这个问题
答案 0 :(得分:3)
您必须创建通知集合(客户端和服务器):
notifications = new Meteor.Collection("notifications");
然后在那里插入您的信息并使用观察手柄显示它。确保添加特定于用户的内容,以便您可以使用较小的用户子集。并确定何时使用并将其标记为已准备好,以便它们不再发布,用户不会继续接收它们。
然后你可以在你的客户端做这样的事情:
Meteor.startup(function() {
notifications.find().observe({
added: function(doc) {
//Message can be contained in doc.txt
//Not sure if this bit is right, but basically trigger the notification:
n = noty({text: doc.txt,timeout: 2000});
}
});
});
希望这能让你对如何做到这一点有一个粗略的了解。