1

mongodb コレクションのレコードを表示するページがあるとします。

var item = Items.findOne({name: documentName});
Session.set('item', item);

これにより、コレクションの準備が整い、結果が見つかったときに、テンプレートがアイテムで更新されます。ここで、Session.get('item') が未定義である間、データがロードされ、ロード中のグラフィックまたはメッセージがユーザーに表示されると仮定できます。ただし、ドキュメントが存在しない場合は、読み込み中のメッセージをユーザーに無期限に表示したくないので、「見つかりません」というメッセージを表示したいと思います。レコードがまったく存在しないかどうかを判断してユーザーに通知するにはどうすればよいですか?

私は考えました:

  1. アイテム セッション変数を「loaded」などに設定する
  2. その値がある間に読み込みメッセージを表示する
  3. コレクションが未定義またはドキュメントを返すと、アイテムまたは「見つかりません」というメッセージが表示されます。

ただし、コレクションが使用可能になるまでクエリはすぐに未定義を返し、クエリが完了しても値がまだ未定義の場合、変更はなく、セッション変数は更新されないため、これは機能しません。

目の前にあるトリックを見逃しているような気がします!誰でもアイデアはありますか?

4

1 に答える 1