2017-02-15 16 views
0

は例えば、それは任意のパイプすることができ、のは、私がpipeVarを持っているとしましょう:など数、大文字、customPipe、角度(角度2+)のパイプを動的に評価/使用する方法はありますか?

はちょうど

{{ myVal | pipeVar }} 

または一部の特殊な構文のようなものを呼び出すための簡単な方法はありますかlike

{{ myVal | #pipeVar }} 

? // plnkr:

私がこれまでに発見した最も近いものはDynamic pipe in Angular 2

+0

チェックこのHTTPSのようなダイナミックpipe.tsでplunkr link

の変更を持っています。 /編集/ Vz88zzWwzPbqgIpMinPp?p = preview – yurzui

+0

@yurzuiプランナーに感謝します。私は同様の実装について考えていました。しかし、追加の引数を持つパイプもサポートする必要があります。また、 'passThrough:[actualPipes]' – techguy2000

+0

のように、複数のパイプをサポートする必要があると思います。このplunkrを確認してください。https://plnkr.co/edit/xX1klYoaGMq1O2TJzu8w?p=preview –

答えて

0

iが更新plunkrこの

const dynamicPipe = ""; 
//i have give one simple logic for example if your dynamic pipe is like 
this.dynamicPipe = ['number','uppercase','customPipe']; //pipe,pipe1 ... pipeN 
//now create a one variable like 'number' | 'uppercase' | 'customPipe' 
for (let i=0;i<this.dynamicPipe.length;i++){ 
    dynamicPipe = dynamicPipe + " | "+this.dynamicPipe[i]; 
} 
@Component({ 
    selector: 'dynamic-comp', 
    template: '{{ data ' + dynamicPipe + '}}' 
}) 
+0

私は参照してください。コンパイラにマルチパイプのサポートを気にさせることができることを指摘してくれてありがとう。私はAOTのための解決策を試していない、あなたはそれがAOTで動作するかどうか知っていますか? – techguy2000

+0

AOTとは何ですか?私はAOTについて考えていません。 –

+0

先行の編集。 yurzuiはAOTで動作しないと言いました。私はまだそれを試しても与えていない... – techguy2000

関連する問題