2016-06-19 7 views
0

私は、購読しているクライアントのコレクションを持っています。コレクションの新しいインサートの後に、その挿入されたコレクションの表示ページにリダイレクトされます。 View]ページで流星群に挿入されたデータを見つけるには?

collection.insert(this.currentPost, (error, postId) => { 

      if (postId) { 
       this.router.navigate(['detail', { postId: postId }]); 
      } 
      else { 

      } 
     }); 

:サーバー上の 'postDetail' コレクション

Meteor.publish('postDetail', (postId: string) => { 
    return PostCollection.find({ _id: postId }); 
}); 

挿入ページで

出版サブスクリプションを見てみると

this.subscribe('postDetail', this.postId,() => { 
    collection.findOne({ _id: this.postId}); 
    **// this is not giving the inserted data at first time** 
    }); 
+0

私はあなたの実際の質問が何であるかもう少し明確にする必要があると思います。主題の質問は非常に幅広く、マニュアルを読むことで最もよく答えられます。あなたの実際の問題は何ですか? –

+0

成功コールバックを挿入するとリダイレクトされますが、次のページにデータが表示されません。 – sathishkumar

答えて

0

、あなたはこれを使用しています。 subscribe():テンプレートレベルのサブスクリプションのように見えます。このサブスクリプションは、テンプレートが破棄されたときに削除されます(これ以上レンダリングされません)。

したがって、挿入後に別のテンプレートにルーティングする場合、そのテンプレートでも再登録する必要があります。

(メテオは、2つのサブスクリプション間でキャッシュされたデータを保持するほどスマートなので、2番目のサブスクリプションは非常に高速ですが、それでもやる必要があります)。

関連する問題