2

ユーザーがMeteorにログインしているかどうかに応じてレイアウトを決定するにはどうすればよいですか?

私が試してみました

Router.map(function () {
  this.configure({
    layoutTemplate: Meteor.userId() ? "appLayout" : "startLayout",
  });
});

エラーが発生します

Error: Meteor.userId can only be invoked in method calls. Use this.userId in publish functions.
4

3 に答える 3

0

読み込んでいればMeteor.user()戻るようで、ログアウトしていれば同様です。undefinednullMeteor.userId()

于 2016-10-04T17:52:31.140 に答える
-2

関数で使用できるthis.userIdエラーが記載されているように、を使用できます。それ以外の場合は、ユーザーコレクションからのデータが必要な場合に使用します。Meteor.user()Meteor.users.findOne({_id: this.userId})

また、iron-router 構造は非推奨です。ここに新しいドキュメントがあります

于 2014-12-25T17:01:03.427 に答える