Mi objetivo: Probar mi funcionalidad de manejo de errores.
Solución temporal: tenga una ruta personalizada: /error , que contiene un código que produce un error fatal a propósito.
var a = undefined; abc // Breaks. Lo anterior funciona, pero no puedo usarlo para probar el sitio de producción ya que la página no es necesaria. Estaba buscando una manera de probarlo a través del navegador. Intenté simplemente agregar" throw new Error("Custom error thrown here") a la consola. Eso en realidad no lo rompe durante el tiempo de ejecución.
Intenté agregar un punto de interrupción y agregar el mismo código: throw new Error("Custom error thrown here") . Eso tampoco funcionó.
¿Alguna otra forma más fácil de hacer esto en lugar de la anterior?
Estaba buscando una manera en la que pueda hacerlo solo a través del navegador.
Gracias.
No mencionaste claramente cómo y dónde se debe lanzar el error. Asumiré que puede usar una copia modificada de su archivo JavaScript para generar errores. El archivo modificado residirá en su computadora y solo se usará cuando use las herramientas de desarrollo de Chrome. Esta característica se llama anulaciones locales . Los pasos son los siguientes:
Sources , vaya a la pestaña OverridesSelect folder for overrides y elija una carpeta en su computadoraSources , vaya a la pestaña PageSave for overridesAhora puede editar la copia del archivo en su computadora o desde las herramientas de desarrollo. Inserte el código que produce el error en la ubicación deseada. Cuando vuelve a cargar la página con las herramientas de desarrollador abiertas, Chrome cargará la copia local del archivo JavaScript y arrojará el error. El error arrojado de esa manera contendrá el contexto desde donde se originó, por ejemplo, la pila de llamadas. Si las herramientas de desarrollo están cerradas, se utilizará la copia en vivo.
Usaría la función exec que en realidad toma una cadena y ejecuta el código en tiempo de compilación.
exec('abc')Agregue este código a su código de producción
window.addEventListener('err', () => { throw new Error('break it'); })y cuando quieras crear un error simplemente
dispatchEvent(new Event('err'))en la consola