Inertia.js v3.7.0, publicada el 31 de agosto de 2026, dota al componente <Form> de dos formas nuevas de detener una petición que sigue en curso. El atributo cancelOnUnmount, disponible en los adaptadores de Vue, React y Svelte, cancela automáticamente el envío cuando el formulario se elimina de la página, por ejemplo cuando se cierra un modal a mitad de una subida. Por defecto vale false, así que los formularios existentes mantienen su comportamiento actual. Además, ahora se expone un método cancel a través de las slot props, la ref del componente y el contexto del formulario en los tres adaptadores, lo que permite añadir un botón de cancelar explícito junto al botón de envío. Para que esto funcione, se modificó el manejo interno de peticiones para que el callback onCancelToken quede inactivo en cuanto llega una respuesta, evitando que se dispare un evento onCancel después de onSuccess en el patrón habitual donde un envío exitoso cierra el modal padre del formulario.
<Form action="/avatar" method="post" cancel-on-unmount>
<input type="file" name="avatar" />
<button type="submit">Upload</button>
</Form>El hook usePoll, que antes solo devolvía las funciones start y stop, ahora también devuelve un valor reactivo polling que indica si el sondeo está activo, inicializado a partir de la opción autoStart (true por defecto). En Vue es un Ref<boolean>, en React usa useState, y en Svelte el hook se trasladó a un archivo .svelte.ts respaldado por $state, lo que obliga a los usuarios de Svelte a mantener intacto el objeto devuelto en vez de desestructurarlo para conservar la reactividad.
Se corrigieron dos fallos a nivel de enrutador. Las once props, que se resuelven una sola vez y se guardan en caché en el cliente, perdían su valor al combinarse con visitas instantáneas que muestran una página provisional antes de que termine la petición real. El enrutador ahora traslada la once prop recordada y su entrada de registro a la página provisional, salvo que la visita aporte su propio valor. La lógica de cancelación también era demasiado amplia: navegar a una página nueva cancelaba también visitas asíncronas independientes dirigidas a otras páginas. La cancelación ahora comprueba el origen y la ruta de la petición, de modo que solo se cancelan las peticiones ligadas a la página que se abandona, como deferred props, partial reloads, router.reload() y los polls, mientras que las visitas asíncronas hacia otras páginas terminan de ejecutarse.
Tres correcciones adicionales: el adaptador de React mostraba props obsoletas tras duplicar una pestaña en Chrome o Firefox, lo que dispara una restauración de navegación back_forward (PR #3196); replaceProp(), appendToProp() y prependToProp() ya no clonan en profundidad todo el objeto de props, evitando renderizados innecesarios y coste de copiado, una contribución de Svyatoslav Kryukov (PR #3194); y <Form> ya no lanza un TypeError en React cuando un evento input se dispara sobre un elemento de formulario ya desmontado, una primera contribución de Niek Nijland (PR #3203). La actualización se instala vía npm, por ejemplo npm install @inertiajs/vue3@^3.7.0, con los paquetes equivalentes para los adaptadores de React y Svelte.




Comentarios
Aún no hay comentarios — escribe el primero.
Inicia la conversación
Sin cuenta ni contraseña — introduce tu correo y te enviamos un enlace de acceso de un solo uso. ¿Primera vez? Todo se configura automáticamente.
Tu valoración se aplicará automáticamente al iniciar sesión.
Revisa tu bandeja de entrada
Hemos enviado un enlace de acceso a …. Ábrelo en este dispositivo — esta pestaña te conectará automáticamente.
¿No llega nada? Mira en la carpeta de spam — y marca el correo como «No es spam» para que la próxima vez llegue directo.