0

Twitter で Meteor アプリにサインインするユーザーがいます。Twitter の screenName を参照する Iron Router を使用して、彼らのプロファイル ページ ルートを作成したいと考えています。

以下の Iron Router コードの一部を置き換える必要があるものがわかりません (私のドキュメント:slugにはプロパティがありません)。sluguser

this.route('expertPage', {
path: '/profile/:slug',
data: function() { return Meteor.users.findOne({"services.twitter.screenName": this.params.slug}); }
});
4

1 に答える 1

3

最初に、テンプレート ヘルパー内のオブジェクトであるキーと値のペアとしてスラッグを提供する必要があります。

userScreenName = function() {
  return Meteor.user().services.twitter.screenName;
}

Template.profileLink.helpers({
  slugObject: function () {
    return {'slug': userScreenName()};
  },
  screenName: function () {
    return userScreenName();
  }
});

を使用して、これを pathFor ヘルパーに提供できるようになりました

a)withブロックで

<template name="profileLink">
  <a href="{{#with slugObject}}{{pathFor 'userProfile'}}{{/with}}">{{screenName}}</a>
</template>

b) 引数として直接使用

<template name="profileLink">
  <a href="{{pathFor 'userProfile' slugObject}}">{{screenName}}</a>
</template>
于 2014-02-14T18:42:30.307 に答える