Servicios en Vue – Explicación con ejemplo

Los servicios o services de una aplicación web son aquellos que proveen funcionalidades de una entidad en específico; tuvieron una popularidad con AngularJS y Angular, pero en Vue tal cosa no existe.

En este post te mostraré un ejemplo de un servicio de Vue, que si bien no es obligatorio, es totalmente válido.

Los servicios son un paradigma

Un servicio no es otra cosa más que un módulo aislado que contiene la lógica de determinada entidad. Podríamos tener un servicio de fórmulas, que calcule las cuentas por pagar, por cobrar, etcétera.

También podríamos tener un servicio (y esto es lo más común) para consumir una API REST.

Al final de cuentas, un servicio contiene lógica de determinada cosa. Y es un paradigma que puede ser portado a distintos frameworks o lenguajes.

Ejemplo de servicio en Vue

Es momento de ver el código. Aquí tengo un servicio de Vue, simple, sencillo y limpio; está dentro de la carpeta services, y se llama ClientesService.

Como puedes imaginar, lleva la lógica de la entidad Cliente. Lo único que hace es consumir la API que tengo.

No te confundas; las funciones usan async porque son asíncronas. En el apartado de HttpClient tengo un cliente propio que es una envoltura de fetch; el cual, si te interesa, lo dejo aquí:

Usar Servicio en Vue

Ahora que tenemos definido el servicio lo podemos importar en un componente de Vue. Si te fijas, el servicio anterior no depende de ningún framework; es inyectable en JavaScript puro y en otros frameworks.

Como sea; para usarlo, lo importamos:

import { ClientesService } from '../../services/ClientesService';

Después lo podemos usar así:

Con eso estamos usando services en Vue, de una manera sencilla. Podemos crear cualquier número de servicios y, como lo dije, cada servicio puede hacer mucho más que traer datos de una API.

¿Por qué usar servicios?

Fácilmente podemos prescindir de los servicios, pero son una buena práctica de programación. Además, esto promueve la reutilización de código: si más tarde queremos obtener los clientes en otro componente, invocamos al servicio.

Adicionalmente, debido a que tenemos una única fuente de la verdad, podemos arreglarla en caso de error o en caso de que (específicamente con las apis) la ruta cambie.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario