流星发布-订阅用户资料
Meteor publish - subscribe user profile
我正在尝试发布用户个人资料。我在 publish.js 中有以下发布功能:
Meteor.publish("singleProfile", function ( profileId ) {
check(profileId, String);
return Meteor.users.find(profileId, { fields: { _id: 1, services: 1, profile: 1 }});
});
这是我在router.js的路线:
Router.route('/profile/:_id', {
name: 'profilePage',
template: 'appProfile',
onBeforeAction: function() {
var currentUser = Meteor.userId();
if(currentUser) {
this.next();
} else {
this.render("signin");
}
},
waitOn: function() {
this.response = Meteor.subscribe('singleProfile', this.params._id);
return this.response;
},
action: function() {
this.render('appProfile');
}
});
问题是,如何访问 appProfile 模板中的配置文件详细信息?我需要定义模板助手吗?或者我需要修改这段代码吗?
您可以为此使用模板助手:
Template.appProfile.helpers({
users() {
return Meteor.users.find();
}
});
然后在您的模板中:
...
{{#each users}}
{{profile.myProperty}} <!-- Renders the myProperty field of the profile. -->
{{/each}}
我正在尝试发布用户个人资料。我在 publish.js 中有以下发布功能:
Meteor.publish("singleProfile", function ( profileId ) {
check(profileId, String);
return Meteor.users.find(profileId, { fields: { _id: 1, services: 1, profile: 1 }});
});
这是我在router.js的路线:
Router.route('/profile/:_id', {
name: 'profilePage',
template: 'appProfile',
onBeforeAction: function() {
var currentUser = Meteor.userId();
if(currentUser) {
this.next();
} else {
this.render("signin");
}
},
waitOn: function() {
this.response = Meteor.subscribe('singleProfile', this.params._id);
return this.response;
},
action: function() {
this.render('appProfile');
}
});
问题是,如何访问 appProfile 模板中的配置文件详细信息?我需要定义模板助手吗?或者我需要修改这段代码吗?
您可以为此使用模板助手:
Template.appProfile.helpers({
users() {
return Meteor.users.find();
}
});
然后在您的模板中:
...
{{#each users}}
{{profile.myProperty}} <!-- Renders the myProperty field of the profile. -->
{{/each}}