trying to create custom directive for learning purpose. Am not able to identify the issue why the renderer2 in Angular 6 is not showing image background.
i've using cli, so there is no issue in registering directive in app.module.ts
@Directive({
selector: '[bgIMG]'
})
export class MyCustomStyleDirective {
// private url = "http://www.publicdomainpictures.net/pictures/50000/velka/flower-meadow.jpg"
constructor(elm : ElementRef, renderer2:Renderer2) {
renderer2.setStyle(elm.nativeElement, 'background-image', 'url ("http://www.publicdomainpictures.net/pictures/50000/velka/flower-meadow.jpg")')
}
}
html
<div bgIMG></div>
where am wrong.? i don't find any console errors also.
update
import { Directive,ElementRef, Renderer2, HostListener } from '@angular/core';
@Directive({
selector: '[bgIMG]'
})
export class MyCustomStyleDirective {
constructor( renderer: Renderer2, el: ElementRef) {
renderer.setStyle(el.nativeElement, 'background-image','http://www.publicdomainpictures.net/pictures/50000/velka/flower-meadow.jpg');
renderer.setStyle(el.nativeElement, 'font-weight','bold');
}
}
html
-----
<div class="container">
<div class="row">
<div bgIMG>
<p>some text</p>
</div>
</div>
</div>
Thanks in advance