Тип лучше указывать не через конструктор примитива, а через тип string (тот что из TypeScript, с маленькой буквы).
url: String = '';
Вы не используете возможности RxJS. Этот кусок кода можно сделать иначе:
ngOnInit() {
this.Preview.url
.subscribe(new_url => this.url = new_url);
}
Подписчик не будет уничтожен при OnDestroy компонента, а будет слушать новый урл до тех пор, пока не выгрузится из памяти сборщиком мусора. Правильнее было бы сделать вот так:
public previewUrl$: Observable<string>
ngOnInit() {
this.previewUrl$ = this.Preview.url
}
<div class="preview" *ngIf="(previewUrl$ | async) as url">
<img class="preview__img" [src]="url">
</div>
В сервисе так же (
https://github.com/BuG1K/task/blob/master/src/app/... вы подписались на http запрос и дальше не используете RxJS. Все манипуляции можно было сделать в
tap/
map и вернуть поток, с которым удобно работать.