[angular] 코드에서 파이프를 사용할 수 있습니까?

템플릿에서 내 사용자 지정 파이프를 사용하면 다음과 같습니다.

{{user|userName}}

그리고 그것은 잘 작동합니다.

코드에서 파이프를 사용할 수 있습니까?

나는 이것을 다음과 같이 사용하려고합니다.

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

그러나 그것은 보여줍니다

userName이 정의되지 않았습니다.

내 대안 db.collection.findOne()은 코드에서 수동으로 사용 하는 것입니다. 하지만 현명한 방법이 있습니까?



답변

먼저 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');
  }
}


답변

@Siva가 정확합니다. 그리고 감사합니다!

따라서 구성 요소에서 파이프를 사용하는 방법은 다음과 같습니다.

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

링크 다른 유사한 질문에.


답변