0

テンプレートに渡された配列があり、値が格納されているかどうかを確認したい:

{{each _page.friends as #friend}}
    {{if _page.user.friends.indexOf(#friend.id)<0}}
        <button>Add</button>
    {{else}}
        Already Friends
    {{/if}}
{{/each}}

どうやら indexOf は関数ではありませんが、配列 (_page.user.friends) は存在するようです。独自の {{each}} を使用できます....

これを行う方法はありますか?それとももっと良い方法ですか?

4

1 に答える 1

1

Derby View documentationindexOfに記載されている のサポートが表示されません。ただし、いつでも表示機能を使用して、誰かが友達かどうかを判断できます。

// in the view
{{each _page.friends as #friend}}
  {{if isFriend(_page.user.friends, #friend.id)}}
     <button>Add</button>
  {{else}}
    Already Friends
  {{/if}}
{{/each}}

// in controller
FriendListController.prototype.isFriend = function(friends, friendId) {
  return friends.indexOf(friendId) > 0;
};
于 2015-06-14T18:09:21.103 に答える