Ich versuche Renderer2 in meinen benutzerdefinierten Dienst injizieren zu injizieren und es ist mit dem Fehler Fehler wie folgt:Wie Renderer2 in benutzerdefinierten Dienst in Angular 4
ERROR Error: StaticInjectorError[Renderer2]:
StaticInjectorError[Renderer2]:
NullInjectorError: No provider for Renderer2!
Es ist ein brandneue Winkel App erstellt cli mit und meine benutzerdefinierten Service, den ich erstellt ist:
import { Injectable, Renderer2 } from '@angular/core';
@Injectable()
export class FontsService {
constructor(private renderer: Renderer2) {
console.log(this.renderer);
}
getFonts() {
return 'Ubuntu';
}
}
Und app.module ist sehr einfach nur die Bereitstellung des neu erstellten Dienstes:
Hilfe bitte?
Vielen Dank.
https://github.com/angular/angular/issues/17824 im letzten Kommentar „aussehen, wenn ich Renderer2 sehen können in Diensten nicht funktionieren und arbeiten in Komponenten (in Angular 4.4.5). " Vielleicht einfach nur direkt in der Komponente verwenden? – NicoLA
Nun, ich verwende diesen Dienst, um ein Link-Tag zu erstellen und dieses Link-Tag in den Kopf einzufügen, nachdem der Benutzer eine bestimmte Schriftart ausgewählt hat. Ich brauche diese Funktionalität an mehreren Stellen, daher scheint der Service eine gute Option zu sein. Leider funktioniert Renderer2 mit Methoden zum Zugriff auf Dom nicht im Custom Service. – Venkat
wäre es möglich, dies stattdessen als Richtlinie zu verwenden? –