8

meteor のドキュメントによると、autopublish パッケージがインストールされている場合、すべてのユーザーをすべてのクライアントに公開する必要があります。

http://docs.meteor.com/#meteor_users

autopublish パッケージをインストールしましたが、forEachonを使用するとMeteor.users、現在ログインしているユーザーのみが一覧表示されます。

coffeescript を使用してクライアント上のすべてのユーザーを一覧表示するより正しい方法はありますか?

4

2 に答える 2

9

Meteor'sPartysの例からの抜粋を次に示します。

// in server.js
Meteor.publish("directory", function () {
  return Meteor.users.find({}, {fields: {emails: 1, profile: 1}});
});

// in client.js
Meteor.subscribe("directory");
于 2013-02-14T11:29:42.420 に答える
8

サブスクライブを使用せずにユーザーコレクションを自動公開する場合

if Meteor.isServer

    Meteor.publish null, ->
        Meteor.users.find {},
            fields:
                username: 1
                profile: 1

購読したい場合は、できるユーザーを指定してください

if Meteor.isServer

    Meteor.publish 'users-by-selector', (options) ->
        Meteor.users.find options, # options as selector like $in: name: 'john'
            fields: # use fields to only publish specify fields you want to send. 
                username: 1
                profile: 1

if Meteor.isClient

    Meteor.autosubscribe ->
        options = Session.get 'your mongodb selector'
        Meteor.subscribe 'users-by-selector', options, ->
            console.log 'on Subscribe Complete Callback.'
            if Meteor.users.find().count()
                Session.set 'specifyUsersLoaded', true
于 2012-11-24T03:27:11.050 に答える