私は、Parties の例から server.js を採用しました。
「ディレクトリ」にすべてのユーザーを公開させる代わりに、次のユーザーのみを公開したい:
- 現在のユーザーが招待されているパーティーを所有する
- 現在のユーザーが招待されているパーティーに招待されている
- 現在のユーザーが所有するパーティーに招待される
ここを参照してください: https://github.com/dimfisch/meteor-dependency/blob/master/parties/server/server.js
問題は、現在のユーザーが新しいユーザーを招待したり (以前はパーティーに関係がなかったという意味で新しい)、新しいユーザーから招待された場合、「ディレクトリ」サブスクリプションが更新されないことです。これらの場合、カーソルは変更されません。
この状況を再現する手順は次のとおりです。
- ジョーとケイトの 2 つの異なるクライアントを開きます。
- ジョーは新しいプライベート パーティーを作成し、ケイトを招待します
- ケイトはその新しいパーティーを見ましたが、Meteor.users でジョーに関する情報を取得しませんでした
- ケイトのクライアントにジョーを登場させたい
問題は、それをどのように達成できるかということです。考えられる方法の 1 つは、「ディレクトリ」パブリッシュ機能で「パーティ」カーソルに変更を観察させることです。しかし、これが実際に機能するかどうかはわかりません。もっと簡単な解決策があるかどうか疑問に思っています。