135

テンプレートでカスタム パイプを使用すると、次のようになります。

{{user|userName}}

そして、それはうまく機能します。

コードでパイプを使用することは可能ですか?

私はこのようにそれを使用しようとします:

let name = `${user|userName}`;

しかし、それは示しています

ユーザー名が定義されていません

私の別の方法はdb.collection.findOne()、コードで手動で使用することです。しかし、スマートな方法はありますか?

4

2 に答える 2

150

まずproviders、モジュールの でパイプを宣言します。

import { YourPipeComponentName } from 'your_component_path';

@NgModule({
  providers: [
    YourPipeComponentName
  ]
})
export class YourServiceModule {
}

@Pipe次に、次のようなコンポーネントで使用できます。

import { YourPipeComponentName } from 'your_component_path';

class YourService {

  constructor(private pipe: YourPipeComponentName) {}

  YourFunction(value) {
    this.pipe.transform(value, 'pipeFilter');
  }
}
于 2016-11-02T07:35:15.887 に答える
114

@シヴァは正しいです。ありがとう!

したがって、コンポーネントでパイプを使用する方法は次のようになります。

let name = new UserNamePipe().transform(user);

別の同様の質問へのリンク。

于 2016-02-02T17:05:26.417 に答える