Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

555
Vistas
Sveltekit que devuelve un 404 en la carga de la página desencadena una excepción no detectada que rompe la página

Tomado directamente de los documentos de sveltekit. Al devolver un 404 en la carga de la página, se producirá una excepción no detectada que rompe la página:

 <script context="module"> /** @type {import('./__types/[...path]').Load} */ export function load({ params }) { return { status: 404, error: new Error(`Not found: /marx-brothers/`) }; } </script>

Lo anterior provoca un error no detectado que aparece en la consola:

ingrese la descripción de la imagen aquí

Esto hará que cualquier otro JS no funcione, como eventos on:click, etc.

Los documentos no dan más detalles sobre el asunto: https://kit.svelte.dev/docs/layouts#error-pages

¿Alguien puede explicar por qué se lanza una excepción no detectada al devolver un estado 404 para una página en la carga de la página? ¿Y cuál es la mejor manera de resolver el problema? Gracias.

Editar: devuelvo el 404 en una página __layout.svelte, que es la página de diseño predeterminada de la que heredan otras páginas. ¿Hay algún problema con hacerlo de esa manera?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

actualizar:

Pude reproducir la excepción no detectada usando la aplicación de demostración y agregando el fragmento de código a __layout.svelte. A pesar de la excepción, la página se mostró bien. No probé si JS estaba roto; la mayoría de las páginas 404 son simples. (Ver nueva captura de pantalla).

Confirmé el cambio error: new Error(...) a una cadena simple aún resultó en una excepción no detectada.

Es muy extraño devolver una respuesta 404 de un __layout.svelte. Los diseños están destinados a ser utilizados para representar elementos comunes de la interfaz de usuario (y quizás una lógica común como proteger páginas detrás de la autenticación).

La verificación de la lógica de estado 404 y la lógica de respuesta deben colocarse en el archivo index.svelte principal. Si no existe una ruta, SvelteKit generará automáticamente la respuesta 404.

Captura de pantalla al modificar la aplicación de demostración:

ingrese la descripción de la imagen aquí


respuesta antigua

No pude reproducir la excepción no detectada. SvelteKit representó una página 404, como se esperaba:

ingrese la descripción de la imagen aquí

Mi proceso (original) para reproducir:

  1. npm init svelte load404 (Elegir proyecto de esqueleto, opciones predeterminadas)
  2. cd load404
  3. yarn
  4. Copie el fragmento de código de la pregunta palabra por palabra en index.svelte:
 <script context="module"> /** @type {import('./__types/[...path]').Load} */ export function load({ params }) { return { status: 404, error: new Error(`Not found: /marx-brothers/`) }; } </script>
  1. yarn dev --open
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda