2017-03-02 3 views
0

特定のパブリケーションを購読したり、自動公開を申請したりせずに、サブスクリプションが準備されていることを確認します。コンパイル時にデータが提供されないため、私のページはリフレッシュ時にロードされないため、vueルーターのグローバルナビゲーションガードにサブスクリプションを渡したいと思います。自動公開を購読する(ナビゲーションガード用)

+0

Meteor.subscribe()のタグに気づいレディ()おそらくこれは魔法のように、あなたが実際にやろうとしているもので、より具体的にすることができ – zhan

+1

に動作します。どのようなデータを購読していない場合や、自動公開を有効にしている場合は、どのようにデータを取得する予定ですか? – jordanwillis

+0

私はautopublishやsubscribe()。ready()グローバルハンドラのようなものを購読することを意味していました。それはタイトルが言っているものです。 – zhan

答えて

0

これらの問題を通常処理する方法は、Iron Routerを介してカーソルとしてデータを渡し、データが利用可能かどうかを確認することです。たとえば、次のように

Router.route('/', { 
    waitOn: [ 
     function() { 
      if (!Meteor.userId()) { 
       Router.go('/login'); 
      } 
      return Meteor.subscribe('data'); 
     } 
    ], 
    action: function() { 
     this.render('template'); 
    }, 
    data: function() { 
     return { 
      data: Data.find({}) 
     }; 
    } 
}) 
<template name="template"> 
    {{#if data}} 
    ... 
    {{/if}} 
</template> 

これが動作するかどうか私に教えてください。

編集

: はちょうど別のルータ

+0

まだ始めるには良い場所です – zhan

関連する問題