本文整理匯總了TypeScript中meteor/meteor.Meteor.publishComposite方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript Meteor.publishComposite方法的具體用法?TypeScript Meteor.publishComposite怎麽用?TypeScript Meteor.publishComposite使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類meteor/meteor.Meteor
的用法示例。
在下文中一共展示了Meteor.publishComposite方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: initPublications
export function initPublications() {
Meteor.publish('users', function(): Mongo.Cursor<User> {
if (!this.userId) return;
return Users.collection.find({}, {
fields: {
profile: 1
}
});
});
Meteor.publish('messages', function(chatId: string): Mongo.Cursor<Message> {
if (!this.userId) return;
if (!chatId) return;
return Messages.collection.find({chatId});
});
Meteor.publishComposite('chats', function() {
if (!this.userId) return;
return {
find: () => {
return Chats.collection.find({memberIds: this.userId});
},
children: [
{
find: (chat) => {
return Messages.collection.find({chatId: chat._id}, {
sort: {createdAt: -1},
limit: 1
});
}
},
{
find: (chat) => {
return Users.collection.find({
_id: {$in: chat.memberIds}
}, {
fields: {profile: 1}
});
}
}
]
};
});
}