Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

268
Views
¿Qué son los proveedores de visualización en Angular? ¿Y cuál es la diferencia entre los proveedores en blanco y negro y los proveedores de visualización?

¿Qué es viewProviders en el siguiente código? ¿Y en qué se diferencia de los proveedores?

 class Greeter { greet(name:string) { return 'Hello ' + name + '!'; } } @Component({ selector: 'greet', viewProviders: [ Greeter ], template: `<needs-greeter></needs-greeter>` }) class HelloWorld { }
over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

En su ejemplo, no hay diferencia entre proveedores y viewProviders porque la plantilla de HelloWorld no usa <ng-content> . Si estaba proyectando contenido dentro de <ng-content>...</ng-content> , no se podría inyectar Greeter en el contenido proyectado porque está usando

 viewProviders: [Greeter]

Si quisiera que Greeter se inyectara potencialmente en el contenido proyectado, usaría

 providers: [Greeter]

Por lo tanto, viewProviders limita el proveedor a los niños que no sean contenido proyectado, mientras que los providers permiten que todos los niños usen el proveedor. El valor es que viewProviders le permite evitar que el contenido proyectado interfiera con sus servicios, lo que podría ser especialmente útil en las bibliotecas.

over 4 years ago · Santiago Trujillo Report

0

  1. Si queremos compartir una instancia de un servicio en toda nuestra aplicación, lo configuramos en proveedores en nuestro NgModule.
  2. Si queremos tener una instancia de un servicio por componente y compartirlo con todos los elementos secundarios del componente, lo configuramos en la propiedad de proveedores en nuestro decorador de componentes. El niño es una vista de los niños.
  3. Si queremos tener una instancia de un servicio por componente y compartirla solo con los elementos secundarios de la vista del componente y no con los elementos secundarios del contenido del componente, lo configuramos en la propiedad viewProviders de nuestro decorador de componentes.
over 4 years ago · Santiago Trujillo Report

0

compartir una instancia de un servicio en toda la aplicación -> configurarlo en los proveedores del módulo raíz [AppModule]

compartir una instancia de un servicio en todo el módulo -> configurarlo en los proveedores de ese módulo

compartir una instancia de un servicio en todo el Componente -> configurarlo en los proveedores de ese Componente

comparta una instancia de un servicio a través del Componente [solo ViewChildren no ContentChildren] -> configúrelo en viewProviders de ese Componente

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!