繁体   English   中英

使用angular 2渲染器和使用nativeElement之间的区别

[英]difference between using angular 2 renderer and using nativeElement

我想知道这段代码有什么区别:

export class SomeDirective implements OnInit {

    constructor(private _elRef: ElementRef){}

    ngOnInit(): any {
        this._elRef.nativeElement.style.backgroundColor = 'green';
    }
}

还有这个:

export class SomeDirective implements OnInit {

    constructor(private _elRef: ElementRef, private _renderer: Renderer){}

    ngOnInit(): any {
        this._renderer.setElementStyle(this._elRef, 'background-color', 'green');
    }
}

我知道第二个比第一个有一些优势,我只需要知道这些优点具体是什么。

我的理解是Renderer是Angular2中的抽象。 这意味着根据执行上下文插入专用实现。 例如,在浏览器中,使用Web worker,从服务器端...

事实上,当DOM API不可用时,存在上下文。 我认为Web工作者和服务器执行。

看到这个问题:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM