diff --git a/aio/content/guide/architecture-services.md b/aio/content/guide/architecture-services.md index 7842d62489..6b579a07e9 100644 --- a/aio/content/guide/architecture-services.md +++ b/aio/content/guide/architecture-services.md @@ -12,7 +12,7 @@ Un componente debe presentar propiedades y métodos para el enlace de datos, para mediar entre la vista (representada por la plantilla) y la lógica de la aplicación (que a menudo incluye alguna noción de * modelo *). -Un componente puede delegar ciertas tareas a los servicios, como obtener datos del servidor, validar la entrada del usuario o iniciar sesión directamente en la consola. +Un componente puede delegar ciertas tareas a los servicios, como obtener datos del servidor, validar la entrada del usuario o registrar información directamente en la consola. Al definir tales tareas de procesamiento en una * clase de servicio inyectable *, hace que esas tareas sean disponibles para cualquier componente. También puedes hacer que tu aplicación sea más adaptable inyectando diferentes proveedores del mismo tipo de servicio, según corresponda en diferentes circunstancias. @@ -21,11 +21,11 @@ al facilitar la integración de la lógica de tu aplicación en los servicios y ## Ejemplos de servicios -A continuación, se muestra un ejemplo de una clase de servicio que se registra en la consola del navegador. +A continuación, se muestra un ejemplo de una clase de servicio que registra información en la consola del navegador. -Servicios pueden depender de otros servicios. Por ejemplo, hay un `HeroService` que depende del `Logger` service, y también usa `BackendService` para obtener heroes. Ese servicio, a su vez, podría depender del servicio `HttpClient` para buscar héroes de forma asíncrona desde un servidor. +Los servicios pueden depender de otros servicios. Por ejemplo, hay un `HeroService` que depende del `Logger` service, y también usa `BackendService` para obtener héroes. Ese servicio, a su vez, podría depender del servicio `HttpClient` para buscar héroes de forma asíncrona desde un servidor. @@ -33,10 +33,10 @@ Servicios pueden depender de otros servicios. Por ejemplo, hay un `HeroService` Service -ID está conectado al framework de Angular y se usa en todas partes para proporcionar nuevos componentes con los servicios u otras cosas que necesitan. +Inyección de dependencia está conectado al framework de Angular y se usa en todas partes para proporcionar nuevos componentes con los servicios u otras cosas que necesitan. Los componentes consumen servicios; es decir, puede * inyectar * un servicio en un componente, dándole acceso al componente a ese servicio. -Para definir una clase como un servicio en Angular, use el decorador `@Injectable ()` para proporcionar los metadatos que le permitan a Angular inyectarlo en un componente como una * dependencia *. +Para definir una clase como un servicio en Angular, usa el decorador `@Injectable ()` para proporcionar los metadatos que le permitan a Angular inyectarlo en un componente como una * dependencia *. De manera similar, use el decorador `@Injectable ()` para indicar que un componente u otra clase (como otro servicio, un pipeline o un NgModule) * tiene * una dependencia. * El * inyector * es el mecanismo principal. Angular crea un inyector para toda la aplicación durante el proceso de arranque e inyectores adicionales según sea necesario. No es necesario crear inyectores. @@ -75,7 +75,7 @@ El proveedor puede formar parte de los propios metadatos del servicio, haciendo Debes registrar proveedores en los metadatos del servicio (en el decorador `@Injectable ()`), o en los metadatos `@NgModule ()` o `@Component ()` -* Por defecto, el comando CLI de Angular [`ng generate service`] (cli / generate) registra un proveedor con el inyector raíz para tu servicio al incluir metadatos del proveedor en el decorador` @Injectable () `. El tutorial utiliza este método para registrar el proveedor de la definición de clase HeroService. +* Por defecto, el comando CLI de Angular [`ng generate service`](cli/generate) registra un proveedor con el inyector raíz para tu servicio al incluir metadatos del proveedor en el decorador `@Injectable()`. El tutorial utiliza este método para registrar el proveedor de la definición de clase HeroService. ``` @Injectable({ @@ -84,9 +84,9 @@ o en los metadatos `@NgModule ()` o `@Component ()` ``` Cuando proporcionas el servicio en el nivel raíz, Angular crea una instancia única compartida de `HeroService` y lo inyecta en cualquier clase que lo solicite. - El registro del proveedor en los metadatos `@Injectable ()` también permite a Angular optimizar una aplicación eliminando el servicio de la aplicación compilada si no se utiliza. + El registro del proveedor en los metadatos `@Injectable()` también permite a Angular optimizar una aplicación eliminando el servicio de la aplicación compilada si no se utiliza. -* Cuando registras un proveedor con un [NgModule específico] (guía / módulos de arquitectura), la misma instancia de un servicio está disponible para todos los componentes en ese NgModule. Para registrarse en este nivel, usa la propiedad `Provider` del decorador` @NgModule () `, +* Cuando registras un proveedor con un [NgModule específico](guide/architecture-modules), la misma instancia de un servicio está disponible para todos los componentes en ese NgModule. Para registrar en este nivel, usa la propiedad `Provider` del decorador `@NgModule()`. ``` @NgModule({ @@ -100,8 +100,8 @@ o en los metadatos `@NgModule ()` o `@Component ()` * Cuando registras un proveedor a nivel del componente, obtienes una nueva instancia del servicio con cada nueva instancia de ese componente. -A nivel del componente, registra un proveedor de servicios en la propiedad `Providers` de los metadatos` @Component () `. +A nivel del componente, registra un proveedor de servicios en la propiedad `Providers` de los metadatos `@Component()`. -Para obtener información más detallada, consulta la sección [Inyección de dependencia] (guía / inyección de dependencia). +Para obtener información más detallada, consulta la sección [Inyección de dependencia](guide/dependency-injection).