@HostBinding
で背景画像を追加するAngular 2+(私は4.xにあります)指令(コンポーネントではありません)を作成する必要があります。私は私が近くにいることを知っていますが、私はそれを調べると、クロムの検査官のbackground-image: none
が表示されます。@HostBindingを使用してAngular 2+ディレクティブに背景画像を追加するにはどうすればよいですか?
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;'
);
}
}
私のアセット/ images/favicon.16pngはwebpackによって提供されています。私はパスオプション、/assets
、~/assets
、などのすべての種類を試してみた...しかしbackground-image
はないbackground-repeat
のを無リピートなど速記プロパティを受け入れず、常にnone
https://plnkr.co/edit/5w87jGVC7iZ7711x7qWV?p=preview
プランナーを作成できますか? –
ここで、/ assetsは/ srcに関連していますか? – Vega
@ Maximus https://plnkr.co/edit/5w87jGVC7iZ7711x7qWV?p=preview しかし、plunkrでは 'background-image' **を追加しません**。それは他のスタイルを追加します。 – jkyoutsey