Ich muss eine Angular 2+ (ich bin in 4.x) -Richtlinie (keine Komponente) erstellen, die ein Hintergrundbild über @HostBinding
hinzufügt. Ich weiß, dass ich in der Nähe bin, aber wenn ich es inspiziere, sehe ich background-image: none
im Inspektor von Chrome.Wie füge ich ein Hintergrundbild zu einer Angular 2+ Direktive mit @HostBinding hinzu?
import { Directive, HostBinding } from '@angular/core';
import { DomSanitizer, SafeStyle } from '@angular/platform-browser';
@Directive({
selector: '[myDirectiveWithBackgroundImage]'
})
export class MyDirective {
@HostBinding('style.background-image')
public backgroundImage: SafeStyle;
constructor(private sanitizer: DomSanitizer) {
this.backgroundImage = this.sanitizer.bypassSecurityTrustStyle(
'url(assets/images/favicon16.png) no-repeat scroll 7px 7px;'
);
}
}
Meine Assets/images/favicon.16png werden von webpack bereitgestellt. Ich habe alle möglichen Optionen zur Pfad versucht, /assets
, ~/assets
, etc ... Aber background-image
ist immer none
https://plnkr.co/edit/5w87jGVC7iZ7711x7qWV?p=preview
Können Sie einen Plünderer erstellen? –
wo ist/Assets relativ zu/src? – Vega
@Maximus https://plnkr.co/edit/5w87jGVC7iZ7711x7qWV?p=preview Allerdings in der Plunkr fügt es nicht 'background-image' ** ** **. Es fügt andere Stile hinzu. – jkyoutsey