How to refresh an image with angular

You can append a timestamp query to the image URL to force the browser to reload the image. This shouldn't have any negative side effects with the server hosting the image.

Update the template to call a function:

<img [src]="getLinkPicture()" alt="profile photo" width="150px" height="150px">

Compute the URL using an optional timeStamp value:

public getLinkPicture() {
     if(this.timeStamp) {
        return this.linkPicture + '?' + this.timeStamp;
     }
     return this.linkPicture;
}

When the URL is changed. Create a new timeStamp value.

public setLinkPicture(url: string) {
     this.linkPicture = url;
     this.timeStamp = (new Date()).getTime();
}

Even if the URL is the same the timestamp changes, and this forces the browser to reload the image.