Angular6错误 Service: No provider for Renderer2

这个错误一般是在构造函数中 注入 Renderer2 引起的。

解决办法很简单,既然无法注入Renderer2就不注入。可以利用工厂类RendererFactory2 代替直接注入Renderer2的方式。
示例代码如下:

import { Renderer2, RendererFactory2 } from '@angular/core';

@Injectable()
class Service {
    private renderer: Renderer2;

    constructor(rendererFactory: RendererFactory2) {
        this.renderer = rendererFactory.createRenderer(null, null);
    }
}

利用renderer对象去操作元素即可

你可能感兴趣的:(angular4,javascript)