In Ihrem Beispiel gibt es keinen Unterschied zwischen Anbietern und viewProvidern, da die Vorlage von HelloWorld nicht verwendet wird <ng-content>
. Wenn Sie Inhalte innerhalb projiziert haben <ng-content>...</ng-content>
, konnte Greeter nicht in die projizierten Inhalte eingefügt werden, da Sie diese verwenden
viewProviders: [Greeter]
Wenn Sie möchten, dass Greeter möglicherweise in den projizierten Inhalt eingefügt wird, würden Sie verwenden
providers: [Greeter]
So viewProviders
begrenzt die Anbieter auf Kinder andere als projizierte Inhalt, während providers
alle Kinder ermöglicht es dem Anbieter zu verwenden. Der Wert besteht darin, viewProviders
dass Sie verhindern können, dass projizierte Inhalte mit Ihren Diensten in Konflikt geraten, was insbesondere in Bibliotheken nützlich sein kann.