我正在尝试为用户创建一个页面,以便在他们登录后可以看到他们上传到网站上的内容。我似乎无法获取要呈现的页面。我到处搜索,但似乎找不到任何东西。我有什么不对的想法吗?
from my publication.js file
Meteor.publish('myTickets', function() {
var currentUserId = this.userId;
return Tickets.find({
createdBy: currentUserId
})
});
from the router.js
Router.route('/users/:_id', {
name: 'userPage',
waitOn: function() {
return Meteor.subscribe('myTickets');
},
data: function() {
return Tickets.find({
userId: this.userId
})
}
});
userpage.js
Template.userPage.helpers({
tickets: function() {
var currentUserId = Meteor.userId();
return Tickets.find({
createdBy: currentUserId
}, {
sort: {
createdAt: -1
}
});
}
});
答案 0 :(得分:0)
我在评论中问你你想要做什么(你有一个带参数的路线,但你从来没有使用它),但无论如何,我认为我遇到了你的问题;
您正在使用Meteor.userId()
在路由器中获取当前用户ID,但您应该使用this.userId
代替; >>> a = [2,4]
>>> b = [1,4,3]
>>> set(a) - set(b)
set([2])
只能用于发布方法。