Solución 1: blackboxing de framework
Funciona muy bien, configuración mínima y sin terceros.
De acuerdo con la documentación de Chrome :
¿Qué sucede cuando haces un blackbox con un script?
Las excepciones generadas por el código de la biblioteca no se pausarán (si Pausa en las excepciones está habilitada), entrar / salir / pasar por alto el código de la biblioteca, los puntos de interrupción del detector de eventos no se rompen en el código de la biblioteca, el depurador no se detendrá en ningún punto de interrupción establecido en la biblioteca código. El resultado final es que está depurando el código de su aplicación en lugar de los recursos de terceros.
Aquí está el flujo de trabajo actualizado:
- Abra las Herramientas para desarrolladores de Chrome ( F12o ⌘+ ⌥+ i), vaya a la configuración (arriba a la derecha o F1). Encuentra una pestaña a la izquierda llamada " Blackboxing "
- Aquí es donde coloca el patrón RegEx de los archivos que desea que Chrome ignore durante la depuración. Por ejemplo:
jquery\..*\.js
(patrón glob / humano traducción: jquery.*.js
)
- Si desea omitir archivos con múltiples patrones , puede agregarlos utilizando el carácter de barra vertical, de esta
|
manera: jquery\..*\.js|include\.postload\.js
(que actúa como un "o este patrón", por así decirlo. O continúe agregándolos con el botón "Agregar".
- Ahora continúe con la Solución 3 descrita a continuación.
Consejo extra! Uso Regex101 regularmente (pero hay muchos otros :) para probar rápidamente mis patrones oxidados de expresiones regulares y descubrir dónde me equivoco con el depurador de expresiones regulares paso a paso. Si aún no tiene "fluidez" en las expresiones regulares, le recomiendo que comience a usar sitios que lo ayuden a escribir y visualizarlos, como http://buildregex.com/ y https://www.debuggex.com/
También puede usar el menú contextual cuando trabaje en el panel Orígenes. Al ver un archivo, puede hacer clic derecho en el editor y elegir Blackbox Script. Esto agregará el archivo a la lista en el panel Configuración:
Solución 2: evento visual
Es una excelente herramienta para tener :
Visual Event es un marcador de JavaScript de código abierto que proporciona información de depuración sobre eventos que se han adjuntado a elementos DOM. El evento visual muestra:
- Qué elementos tienen eventos adjuntos
- El tipo de eventos adjuntos a un elemento.
- Se activa el código que se ejecutará con el evento.
- El archivo de origen y el número de línea donde se definió la función adjunta (solo navegadores Webkit y Opera)
Solución 3: depuración
Puede pausar el código cuando hace clic en algún lugar de la página, o cuando se modifica el DOM ... y otros tipos de puntos de interrupción JS que serán útiles para conocer. Debes aplicar blackboxing aquí para evitar una pesadilla.
En este caso, quiero saber qué sucede exactamente cuando hago clic en el botón.
Abra Dev Tools -> pestaña Fuentes, y a la derecha encuentre Event
Listener Breakpoints
:
Expandir Mouse
y seleccionarclick
- Ahora haga clic en el elemento (la ejecución debería pausar), y ahora está depurando el código. Puede pasar por todos los códigos presionando F11(que es paso ). O retroceda algunos saltos en la pila. Puede haber un montón de saltos
Solución 4: palabras clave de pesca
Con Dev Tools activado, puede buscar en toda la base de código (todo el código en todos los archivos) con ⌘+ ⌥+ Fo:
y buscando #envio
o cualquiera que sea la etiqueta / clase / id que crees que comienza la fiesta y puedes llegar a algún lugar más rápido de lo previsto.
Tenga en cuenta que a veces no solo hay un img
montón de elementos apilados, y es posible que no sepa cuál activa el código.
Si esto está un poco fuera de su conocimiento, eche un vistazo al tutorial de Chrome sobre depuración .
Visual Event
bookmarklet. Detecta eventos de clic vinculados por bibliotecas populares y crea una superposición del sitio que muestra dónde están vinculados los eventos y proporciona ejemplos de código y ubicaciones de origen para cada evento.