Я создал угловой Pipe
с именем trim
. Этот канал предназначен для удаления последнего символа из строки. Вот моя труба класса TrimPipe
. Консоль не регистрирует значения, когда канал используется внутри HTML.
Использование HTML здесь -
<ng-container *ngFor="let bg of backgrounds.preferred">
<span>{{bg.name ? (bg.name + ', ') : '' | trim}}</span>
</ng-container>
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'trim'
})
export class TrimPipe implements PipeTransform {
transform(value: any, args?: any): any {
console.log(value, args, 'Pipes');
return value.toString().substring(0, value.length - 1);
}
}
Мой app.module.ts
файл -
import {BrowserModule} from '@angular/platform-browser';
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import {NgModule} from '@angular/core';
import {FormsModule} from '@angular/forms';
import {HttpClientModule} from '@angular/common/http';
// Custom
import {AppComponent} from './app.component';
import {CommonService} from './shared/services/common.service';
import {DirectivesModule} from './shared/directives/directives.module';
import {PipeModule} from './shared/pipe/pipe.module';]
@NgModule({
declarations: [
AppComponent
],
imports: [
DirectivesModule,
PipeModule,
HttpClientModule,
BrowserModule,
BrowserAnimationsModule,
NgSelectModule,
FormsModule
],
providers: [CommonService],
bootstrap: [AppComponent]
})
export class AppModule {
}
Мой pipe.module.ts
-
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { TrimPipe } from './trim.pipe';
@NgModule({
imports: [
CommonModule
],
declarations: [TrimPipe],
exports: [TrimPipe]
})
export class PipeModule { }