Использование каждого в тлеющих ручках - PullRequest
0 голосов
/ 08 ноября 2019

У меня есть каждый цикл, как показано ниже, я хочу добавить '(' перед первым элементом и ')' после последнего элемента. Может кто-нибудь, пожалуйста, помогите мне, как я могу это сделать? Любая помощь будет очень, очень полезна - спасибо

{{#each  v.NOVNoticeTypeName as |vv iindex|}}
    {{get v.NOVNoticeTypeName iindex}}: {{get v.NOVNumber iindex}}
    <br/>                                         
{{/each}}

Ответы [ 2 ]

1 голос
/ 08 ноября 2019

Я бы посоветовал использовать комбинацию угасающих истинных помощников и угасающих составных помощников * has-next и has-previous.

{{#each v.NOVNoticeTypeName as |vv iindex|}}
  {{#if (not (has-previous vv v.NOVNoticeTypeName))}}
    {{!-- This is the first element in the array}} --}}
    ({{get v.NOVNoticeTypeName iindex}}: {{get v.NOVNumber iindex}}
  {{else if (not (has-next vv v.NOVNoticeTypeName))}}
    {{!-- This is the last element in the array}} --}}
    {{get v.NOVNoticeTypeName iindex}}: {{get v.NOVNumber iindex}})
  {{else}}
    {{!-- This is everything except the first and last element --}}
    {{get v.NOVNoticeTypeName iindex}}: {{get v.NOVNumber iindex}}
  {{/if}}
  <br />
{{/each}}
1 голос
/ 08 ноября 2019

Используя ember-true-helpers просто проверьте, является ли элемент первым или последним в массиве (точно не знаю, что вы хотели сделать с (и), поэтому я просто предположил:

{{#each  v.NOVNoticeTypeName as |vv iindex|}}
  {{#if (or (eq v.NOVNoticeTypeName.firstObject vv) (eq v.NOVNoticeTypeName.lastObject vv))}}
    ({{get v.NOVNoticeTypeName iindex}}: {{get v.NOVNumber iindex}})
  {{else}}
    {{get v.NOVNoticeTypeName iindex}}: {{get v.NOVNumber iindex}}
  {{/if}}
  <br/>                                         
{{/each}}
...