Solución de problemas de JavaScript y PHP al mismo tiempo que PhpStorm


Desde que comencé con deliciosos cerebros en julio del año pasado, me he convertido en un gran admirador de PhpStorm. Realmente son las rodillas de la abeja. No revisaré la lista completa de funciones, pero algunas de las cosas que encuentro para la ayuda diaria son:
CMD+Haga clic en definiciones de métodos
Integración de VCS y resaltando los cambios de color
Marcas de código
Y, por supuesto, la integración de xdebug
En esta publicación, quiero expandir lo que ya he cubierto con phpstorm y xdebug y mostrarle cómo mejorar su solucionador de problemas de JavaScript con phpstorm. ¡Vamos a eso! ¿Por qué usar PhpStorm Debugger? ¿Alguna vez ha encontrado un archivo o método de JavaScript complejo y necesitó saber el valor de una variable a la vez durante la ejecución del script? Sé que lo he hecho, especialmente cuando “acumula” una nueva base o función de código. Lo que normalmente haría es bloquear una llamada de consola.log () en el punto en que quería saber un valor y comenzar la consola Chrome para ver qué es.
El problema con este método surge al usar herramientas de compilación, como lo hacemos con WP Migra DB Pro. Debe esperar la finalización de la tarea de construcción para ver el resultado, perdiendo valiosos segundos del día. También es una forma bastante simplista de ver el código JavaScript y no le da la imagen completa. Chrome tiene un disturbio decente incorporado en la consola de desarrolladores. Sin embargo, para mí siempre se ha sentido sin control usar un borde externo que no está en mi ideal. Usé el depurador de Chrome en el pasado, pero prefiero el PhpStorm Debugger por algunas razones.
La primera ventaja del solucionador de problemas de PhpStorm es que le permite definir tareas o scripts para ejecutar antes de comenzar la resolución de problemas. Si tiene una tarea para murmurar o tragar que compilan sus scripts, esta es una adición útil. La segunda ventaja es que los puntos de interrupción se guardan de manera confiable entre la actualización del distrito PhpStorm D. El depurador Chrome no guardará puntos de interrupción entre las cargas de la página si hay una cadena para eliminar el caché conectado a la URL en una etiqueta de script. Eliminar la cadena aleatoria y/o configurar los mapas de origen para sus scripts ayudaría a este respecto, pero no siempre es posible.

Finalmente, la mayor ventaja de JavaScript PhpStorm es la integración con el Php Xdebug DeBarer. Como veremos pronto, JavaScript y PHP pueden ser solucionados durante la misma sesión. Preparar lo primero que querrá hacer es consultar la documentación de JetBrains sobre la configuración JavaScript. Pasa los pasos principales necesarios para poner las cosas en funcionamiento. Lo siguiente que querrá hacer es asegurarse de usar el navegador web Chrome. Las cosas parecen funcionar mejor con Chrome, aunque hay una configuración para Firefox. Luego deberá instalar la extensión de Chrome JetBrains para que Chrome y PhpStorm puedan hablar entre sí.
Para el propósito de esta publicación, superaremos la solución de problemas de distancia, porque mis sitios de desarrollo locales usan todos los campos locales separados y para PhpStorm están “a distancia”. Está un poco confundido, pero tuve más éxito siguiendo las instrucciones para un servidor remoto. Para activar la resolución remota de JavaScript, deberá crear una configuración de solución de problemas permanente. Para hacer esto, haga clic en “Ejecutar” en la barra de menú anterior, luego haga clic en “Editar configuraciones”. Comenzaremos haciendo clic en el botón “+” y seleccionando “JavaScript Depug” .https: //cdn.deliciousbrains.com/content/uploads/2017/02/03114814/nknbbz91.mp4
En esta pantalla, ingresaremos nuestro nombre para esta configuración de solución de problemas y seleccionaremos una URL inicial. Utilizo la página de migración DB Pro Migra Migra Migra, pero también podría usar una URL frontal para su propia configuración. Además, si la URL coincide con el proyecto PHPStorm que ha abierto hoy, ¡debería ser todo lo que necesita para comenzar y trabajar! De lo contrario, puede asignar un dominio o una URL a su proyecto actual utilizando la sección “URL de distancia” en la configuración de solución de problemas.
Solución de problemas Si todo salió bien, ahora deberíamos estar preparados para solucionar algo de JavaScript. Para hacer esto, tendremos que usar algunos puntos de interrupción. Una cosa muy importante a tener en cuenta aquí es que los puntos de interrupción deben colocarse en los archivos JavaScript que carga el navegador. Si no usa una herramienta de construcción en su flujo de trabajo, está listo. Sin embargo, si utiliza una herramienta de compilación (como Prim, Gulp o Webpack), deberá asegurarse de que los puntos de interrupción estén en los archivos que eliminan el proceso de construcción. Entonces, si tiene una carpeta /distinción en la que se almacenan sus activos, asegúrese de que los puntos de interrupción estén en estos archivos, en lugar de en los archivos de origen JS. Es importante tener en cuenta que querrá evitar reducir los archivos construidos en El nivel local durante el desarrollo y para ahorrar la minimización para un paso final de “construcción”. Como alternativa, si tiene mapas de origen activados en el proceso de construcción, es posible que pueda agregar puntos de interrupción directamente a los archivos de origen de JavaScript. Hay un problema con los mapas de origen en línea de WebStorm/PhpStorm y Browserify, pero hay una solución. En nuestro caso, con Script_Debug WordPress activado, podemos cargar los archivos construidos. Esta puede ser una opción para ti también. También debo mencionar que PhpStorm es esencialmente asumiendo la consola para los desarrolladores de Chrome cuando resuelve problemas. Esto significa que la mierda no funcionará si la consola Chrome está abierta en la pestaña donde ejecuta el código. Un pequeño problema, pero me atrapó varias veces.
Puntos de interrupción Ahora que sabemos dónde poner nuestros puntos de interrupción, agregue algunos. En phpstorm, es tan simple hacer clic en el borde de una línea que queremos interrumpir. Hay varias otras opciones para puntos de interrupción, pero para nuestros propósitos usaremos un punto de interrupción regular. Después de configurar nuestros puntos de interrupción, haremos clic en el icono “Error” en la barra de menú superior o en el menú “Ejecutar”> depuración. Esto debería abrir Chrome con una barra amarilla en la parte superior que dice “El soporte de JetBrains IDE gira este navegador”. Una vez que haga algo en el navegador que desencadena el código marcado con un punto de interrupción, comenzará a PhpStorm con Open Bullshit.https: //cdn.deliciousbrains.com/content/uploads/2017/02/03114941/lqek9ys .mp4

En la consola de solución de problemas, tendrá todas sus herramientas de solución de problemas favoritas que obtenga con la solución de problemas de XDebug PHP, pero también una nueva herramienta para solucionar el código asíncrono. Esto se puede cambiar con el cuadro de selección “Async” en el panel de solución de problemas. Este pequeño tipo te permitirá Stepps en el código asíncrono. Al hacer clic en este cuadro de selección, le dará acceso a toda la pila de llamadas dentro de la llamada asíncrona inversa, ya sea AJAX o algo así como una llamada SetTimeOut.

Para mí, esto fue a la mano cuando estaba solucionando los problemas de JavaScript para el archivo de medios de WP Migra DB Pro. Estaba mirando cómo se administran los archivos grandes durante una migración de “empuje” y reduje la lógica a unas pocas líneas de JavaScript. Con mis nuevas herramientas de solución de problemas JS encontradas, establecí algunos puntos de interrupción y me puse a trabajar.

https://cdn.deliciousbrains.com/content/uploads/2017/02/03114917/zyhugh8.mp4de podía ver cómo y cuándo cada segmento de la instrucción if se activaba. Otras herramientas Otra herramienta útil es la funcionalidad de “relojes” incorporados por PhpStorm. Le permite establecer elementos en su código para rastrear, lo que significa que el solucionador de problemas mostrará el valor de este elemento en el panel de relojes. Esto es útil para las cosas que normalmente eliminaría con una llamada de consola. Es útil, porque le ahorra tiempo en el seguimiento de la variable en el panel de solución de problemas cada vez que reinicia el escáner.
En el caso del ejemplo anterior, estaba siguiendo la variable WPMDB global, de modo que tuve un acceso rápido cuando se activaron los puntos de interrupción. Otro truco con el PhpStorm Disturber que uso con bastante frecuencia es la herramienta “Evaluar la expresión”. Con este instrumento, puede inspeccionar y calcular valores basados ​​en el código actualmente interrumpido.
En el ejemplo anterior, vi que la llamada AJAX devolvió una fecha variable en una llamada inversa de Ajax jquey. Sin embargo, los datos devueltos eran una cadena JSON y quería estar bien formado. Con el instrumento de “expresión evaluada”, podría usar el método jquey $ .parsejson () para eliminar un objeto JavaScript para la inspección posterior. Esta herramienta también está disponible cuando se usa el debanador PHP XDEBUG. Integración con XDebug Finalmente, quiero cubrir otra característica que creo que es el aspecto más grande de PhpStorm distante: la capacidad de solucionar problemas del código JavaScript y PHP durante la misma sesión de solución de problemas. Puede ver un valor a medida que se transfiere de JavaScript Front-end a PHP Back-end. Esto es especialmente útil para tratar las llamadas de AJAX y su gestión de back-end. Por ejemplo, suponga que publica algunos valores a través de AJAX en su PHP y que se corrompen. Puede establecer algunos puntos de interrupción en JavaScript para inspeccionar los valores antes de enviarlos al servidor y luego inspeccionarlos tan pronto como el servidor los reciba. Aunque definitivamente podría usar el Chrome Distant para inspeccionar los valores de JavaScript, deberá volver a PhpStorm para inspeccionar los valores como se interpreta. La simplicidad ofrecida por el PhpStorm PhpStorm integrado es extremadamente útil, porque no tiene que abandonar el IDE durante los problemas. Para solucionar problemas de JS y PHP, debe tener XDebug ya activado y configurado con PHP y PHPStorm. No revisaré esto aquí, pero aquí hay una buena publicación para ponerte en funcionamiento con MAMP.
Suponiendo que tenga PHP configurado para ejecutar XDebug, deberá hacer clic en el icono “Teléfono” para comenzar a escuchar las conexiones PHP XDEBUG. Después de eso, inicie la solución de problemas de JavaScript haciendo clic en el icono “Error”. En este escenario, utilizamos la “Solución de problemas web de configuración cero” de PhpStorm con el solucionador de problemas de JavaScript guardado que creamos anteriormente. Si tiene puntos de interrupción en su código PHP, se activarán a medida que se golpeen en la ejecución del programa. Puede cambiar entre la solución de problemas de JavaScript y la solución de problemas de PHP haciendo clic en las dos pestañas sobre el panel de solución de problemas.

El rascado de la superficie y esto resume parte del solucionador de problemas de JavaScript en phpstorm. Junto con Xdebug para PHP, es una combinación fuerte para ayudar a solucionar problemas y profundizar en el código complejo. Esto es solo parte de lo que puede hacer el Phpstorm Disturber, ¡pero espero que te anima a probar! ¿Usar el interruptor de PhpStorm? ¿Cuáles son algunas formas en que usa para solucionar el complejo código JavaScript? ¡Dinos en los comentarios!


Copyright statement: Unless otherwise noted, this article is Collected from the Internet, please keep the source of the article when reprinting.

Check Also

gkOVSBm5B8SgiXmo

Shopify vs WooCommerce – ¿Cuál es la mejor plataforma?(Comparación)

Shopify vs WooCommerce

Leave a Reply

Your email address will not be published. Required fields are marked *