Inertia maneja el enrutamiento del lado del cliente de manera diferente al Vue.js tradicional en varias formas clave:
1. Representación del lado del servidor:
- Inertia utiliza la representación del lado del servidor para representar los componentes de Vue, lo que significa que la carga inicial de la página la maneja el servidor. Este enfoque mejora el SEO y las velocidades de carga inicial en comparación con la representación tradicional del lado del cliente de Vue.js[2][4].
2. Proporción JSON mínima:
- Cuando el servidor recibe una solicitud para una nueva ruta, envía una respuesta JSON mínima que contiene el nombre del componente Vue y los accesorios necesarios. Este enfoque reduce la cantidad de datos transferidos y mejora el rendimiento[2][4].
3. Componente de enlace de inercia:
- Inertia proporciona un componente "Enlace" personalizado que intercepta clics y activa solicitudes XHR para recuperar los datos del servidor. Este componente garantiza que el contenido de la página se actualice dinámicamente sin recargas de la página completa[4].
4. No es necesario el enrutador Vue:
- Inertia elimina la necesidad de Vue Router, ya que todas las rutas se definen en el lado del servidor y son manejadas por el enrutador de Laravel. Esto simplifica el proceso de desarrollo y reduce la complejidad de gestionar múltiples sistemas de enrutamiento[2][4].
5. Frontal y backend unificados:
- Inertia se integra perfectamente con Laravel, lo que permite a los desarrolladores utilizar el mismo lenguaje de plantillas (Vue.js) tanto para el frontend como para el backend. Este enfoque unificado simplifica el desarrollo y reduce la necesidad de configuración adicional[1][3].
Al aprovechar estas diferencias, Inertia proporciona un enfoque único para el enrutamiento del lado del cliente que combina las fortalezas de Vue.js y Laravel, lo que resulta en un proceso de desarrollo más eficiente y escalable.
Citas:[1] https://github.com/inertiajs/inertia/issues/905
[2] https://inertiajs.com/routing
[3] https://jetstream.laravel.com/stacks/inertia.html
[4] https://vueschool.io/articles/vuejs-tutorials/the-ultimate-guide-for-using-vue-js-with-laravel/
[5] https://laracasts.com/discuss/channels/vue/inertia-vs-vue-pinia-and-router