2017-01-21 15 views
0

テンプレートでメソッド一致を使用する方法はありますか?私は意味:テンプレートで一致方法を使用する方法はありますか

<span class="local-text">Text Length: {{textArea.value.length}} (without spaces: {{textArea.value.match(/\S/g).length}})</span> 
     </p> 
     <textarea ref-textarea #textArea [(ngModel)]="str" rows="10"></textarea> 

私はスペースを入れずにテキストの長さを表示する必要があります。 は、ここで私はmatch関数を使用する必要があるテンプレートの一部です。 テンプレートで行う方法はありますか?パイプを使用して

+0

のようにそれを使用するには、以下のようにそれに何かを行うことができますあなたはなぜそれをテンプレートで達成しようとしていますか? –

答えて

2

、あなたは作成する方がよいでしょう、

import {Pipe, PipeTransform} from '@angular/core'; 
@Pipe({ 
    name: 'removedspaceslength', 
    pure: false 
}) 
export class RemoveSpacesPipe implements PipeTransform { 
    transform(text: string): number { 
     if (!text) 
      return 0; 
     return text.replace(/ /g, "").length; 
    } 
} 

結果を達成するため、私はそうは思いません

<span class="local-text">Text Length: {{text.length}} (without spaces: {{text | removedspaceslength}})</span> 
<textarea ref-textarea [(ngModel)]="text" rows="10"></textarea> 
+0

transormがbooleanを返すと、なぜ0を返しますか? – misha130

+0

番号を返すように更新しました。コードからコピーして戻り値の型を忘れてしまった;) –

関連する問題