Listen to the error event of the image element:
<img [src]="someUrl" (error)="updateUrl($event)">
where updateUrl(event) { ... } assigns a new value to this.someUrl.
Plunker example
If you want to check in code only you can use the method explained in Checking if image does exists using javascript
@Directive({
selector: 'img[default]',
host: {
'(error)':'updateUrl()',
'[src]':'src'
}
})
class DefaultImage {
@Input() src:string;
@Input() default:string;
updateUrl() {
this.src = this.default;
}
}
Directive Plunker example