当我在模板中使用自定义管道时,它是这样的:

{{user|userName}}

而且效果很好.

是否可以在代码中使用管道?

我试着这样使用它:

let name = `${user|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');
  }
}

Angular相关问答推荐

Angular 16路卫单元测试可观察到的SpyObj属性

Transloco不加载Angular 17中的翻译

Angular路由不响应子路由的子路由

带输入的单位测试Angular 分量.需要

Angular 15:将数据从主零部件传递到辅零部件

ANGLING HTTP.GET()返回包含数据的数组

Primeng:安装ANGLE 16.2.0版本

出错后可观察到的重用

Angular 在关闭另一个对话框后打开另一个对话框的最佳做法是什么?

尽管模型中的变量发生了变化,但Angular 视图没有更新

将 html ngModel 值传递给服务 --Angular

为什么 HttpParams 在 Angular 4.3 中的多行中不起作用

material Angular手风琴header/title高度

由router-outlet 创建时如何将css类应用于组件元素?

如何在 Angular2 中的所有请求的请求标头中发送Cookie?

检测指令中输入值何时更改

为什么Angular 12 'ng serve' 构建应用程序的速度很慢?

Angular 2 Material Design 组件是否支持布局指令?

我应该在 Angular 4+ 应用程序中 for each 组件创建一个模块吗?

Firebase 查询子项的子项是否包含值