2017-08-28 10 views
1

私はeachループと解釈しようとしています。しかし、私は良い解決策を提供することができません。(エバー・ウェイ!)どのように各ループを解釈するのですか?

このscernarioの処理方法は?

ループからは、16という数字が印刷されています。 index4 (index % 4 == 0)に届くといつでもハイフンを付けたい( - )

これを実現するにはどうすればいいですか?

import Ember from 'ember'; 

    export default Ember.Route.extend({ 
     model(){ 
     return [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]; 
     } 
    }); 

私のHBSファイル:ここ

は私route.jsある

<h1>Each with condition </h1> 
{{#each model as |num index |}} 
    {{index}} 
{{/each}} 

が、私は次のようになります。だから、

<h1>Each with condition </h1> 
{{#each model as |num index |}} 
    {{index}} {{ if index % 4 == 0 }} -- {{/if}} 
{{/each}} 

、の正しい燃えさしのアプローチは何ですかこの?

Twiddle here

答えて

3

あなたはこれを達成するために、独自のヘルパーを作成する必要があります。私はyour twiddle

ヘルパー/私の-helper.js application.hbsで

import Ember from 'ember'; 
export function myHelper([index,position,totalLength]) { 
    if(index === totalLength-1){ 
    return ''; 
    } 
    index = index+1; 
    return index%position === 0 ? " -- ":""; 
} 
export default Ember.Helper.helper(myHelper); 

{{#each model as |num index |}} 
    {{index}}{{my-helper index 4 model.length}} 
{{/each}} 
+0

私は更新されないのひねりを更新しました。あなたは一見を持つことができますか? – 3gwebtrain

+0

私の答えは – kumkanillam

+0

に更新されました。あなたにとても感謝しています。しかし、まだ16番目の数字の後の最後のハイフンは、それを削除する方法はありません? – 3gwebtrain

関連する問題