嗨,我正在用流星制作磁性诗歌游戏,我很喜欢绿色。
http://test-magnets.meteor.com/
目前它是协作的,效果很好。我现在正尝试拥有它,这样您就可以私下演奏而不会被别人弄乱您的诗歌。我使用Iron Router根据用户ID生成了一个url
router.js
Router.map(function() {
this.route('home', {
path: '/'
});
var user = Meteor.userId();
this.route('private', {
path: '/' + user
});
});
我的想法是在磁铁内使用RefrigeratorId。在家庭协作中,RefrigeratorId为1。单击“创建我自己的”时,它会将FisherId更改为与userId相同。我假设我需要根据RefrigeratorId进行某种发布和订阅,但不确定如何进行。
这会将RefrigeratorId切换为用户ID
'click #new-board': function() {
var user = Meteor.userId();
var magnet = Magnets.findOne();
Magnets.update({_id: magnet._id}, {$set: {fridgeId: user}});
return Magnets.find({fridgeId: user});
}
然后在首页上将RefrigeratorId设置回1
Template.private.events = {
'click #group-play': function() {
var magnet = Magnets.findOne();
Magnets.update({_id: magnet._id}, {$set: {fridgeId: 1}});
return Magnets.find({fridgeId: 1});
}
};
当前订阅和发布
if (Meteor.isClient) {
Meteor.subscribe('magnets', function() {
return Magnets.find();
});
}
if (Meteor.isServer) {
Meteor.publish('magnets', function() {
return Magnets.find();
});
}
任何建议将不胜感激。谢谢
-约翰
最佳答案
return Magnets.find({fridgeId: user},{reactive: false});