Ich aktualisierte Angular 2 Projekt zu Angular 4. Ich verwende Pipe wie unten.Angular 2 Pipe Binding Ursache ExpressionChangedAfterItHasBeenCheckedError
<input type="text" class="form-control" [ngModel]="customerSearchText | isnumber" (ngModelChange)="customerSearchText=$event">
customerSearchText Erklärung
public customerSearchText: number;
isnumber.pipe
@Pipe({ name: 'isnumber'})
export class IsNumberPipe implements PipeTransform {
transform(val: string): any {
if(!val) return '';
val=val.toString();
return WrappedValue.wrap(val.replace(/\D/g, ''))
}
}
Als ich so benutzten ich Fehler immer bin.
Error: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '[object Object]'. Current value: '4'
Als ich Rohr von meiner Eingabe löschte, ist der Fehler weg. Aber ich will Kontrolle ist Eingangsnummer.
Wie kann ich dieses Problem lösen?
Was ist 'WrappedValue.wrap'? –