ハンドルバーに関する公式流星ウィキが言ったように:
ヘルパーを複数のテンプレートから見えるようにする唯一の方法は、それぞれに同じ関数を割り当てるか、グローバル ヘルパーを宣言することです。
私は望遠鏡を使用してアプリを構築していますが、問題は次の画像のようにユーザー プロファイルの「member since」の値が欠落していることです。
/client/views/users/user_profile.js のソース コードがうまく
Template.user_profile.createdAtFormatted = Template.user_item.createdAtFormatted;
動作しないためです。
/client/views/users/user_item.js のヘルパーは次のとおりです。Template.user_item
Template.user_item.helpers({
createdAtFormatted: function(){
return this.createdAt ? moment(this.createdAt).fromNow() : '–';
})
、 /client/views/users/user_profile.js のコードを次のように変更すると:
Template.user_profile.createdAtFormatted = function() {
return this.createdAt ? moment(this.createdAt).fromNow() : '–';
}
または、このようなグローバルヘルパーを作成します
Handlebars.registerHelper("createdAtFormatted", function(){
return this.createdAt ? moment(this.createdAt).fromNow() : '–';
});
その後、すべてがこのように大丈夫です
私が疑問に思うのは、なぜTemplate.user_profile.createdAtFormatted = Template.user_item.createdAtFormatted;
私や著者が望むように割り当てが機能しなかったのかということです。