¿Cómo se depura su código React con React Native mientras la aplicación se ejecuta en el simulador de aplicaciones?
266
¿Cómo se depura su código React con React Native mientras la aplicación se ejecuta en el simulador de aplicaciones?
Respuestas:
Cmd+Ddesde dentro del simulador. Aparecerá Chrome y desde allí puedes usar las Herramientas para desarrolladores.
Editar:
Esto ahora está vinculado en los documentos de ayuda .
fuente
Cmd+M
en OS X y AndroidDepuración de React Native Apps
Para depurar el código JavaScript de su aplicación de reacción, haga lo siguiente:
Command + D
y se abrirá una página web en http: // localhost: 8081 / debugger-ui . (Chrome solo por ahora) o use elShake Gesture
Command + Option + I
para abrir las herramientas de desarrollador de Chrome o ábralo a través deView
->Developer
->Developer Tools
.Opcional
Instale la extensión React Developer Tools para Google Chrome. Esto le permitirá navegar por la jerarquía de vistas si selecciona la
React
pestaña cuando las herramientas de desarrollador están abiertas.Recarga en vivo
Para activar Live Reload, haga lo siguiente:
Control + Command + Z
.Enable/Disable Live Reload
,Reload
yEnable/Disable Debugging
opciones.fuente
Para una aplicación de Android, si está utilizando Genymotion, puede alternar el menú presionando
CMD + m
, pero puede que tenga que habilitarlo en el menú haciendo esto.CMD + m
clic en depurar en Chromefuente
debug in chrome
se reemplaza porstart debug remotely
.cmd + m
octrl + m
seleccionarstart debug remotely
desde las ventanas emergentes en tu simuladorAdemás de las otras respuestas. Puede depurar react-native utilizando la declaración del depurador
ejemplo:
Tus herramientas de desarrollo de Chrome deben estar abiertas para que esto funcione
fuente
si desea depurar usando un dispositivo Android en Windows, simplemente abra un símbolo del sistema y luego escriba (asegúrese de que su adb funcione correctamente)
aparecerá una pantalla como la imagen
luego seleccione
se abrirá automáticamente una nueva ventana. luego, abra el elemento de inspección o presione F12 para la consola.
fuente
Pruebe este programa: https://github.com/jhen0409/react-native-debugger
Funciona en:
windows
,osx
ylinux
.Es compatible con:
react native
yredux
También puede inspeccionar el árbol de componentes virtuales y modificar los estilos que se reflejan en la aplicación.
fuente
console.log(url)
, pero no puedo encontrar dónde está la salida.cmd ⌘+ Dcuriosamente no funcionó para mí. Presionar ctrl+ cmd ⌘+ Zen el simulador de iOS me abrió la ventana del navegador de depuración.
Esta es la pantalla que aparece:
Más detalles aquí.
fuente
La depuración de react-native 0.40.0 en Debian 8 (Jessie) se puede hacer navegando a http: // localhost: 8081 / debugger-ui en Chromium o Firebug mientras su aplicación se ejecuta en el simulador de Android. Para acceder al menú de desarrollador en la aplicación, ejecute el siguiente comando en otra ventana de terminal, como se señala aquí :
adb shell input keyevent 82
fuente
No tengo suficiente reputación para comentar las respuestas anteriores, que son geniales. :) Estas son algunas de las formas en que estoy depurando cuando desarrollo una aplicación nativa de reacción.
Recarga en vivo
react-native hace que sea muy fácil ver sus cambios con las teclas ⌘ + R o incluso habilitar la recarga en vivo y watchman "actualizará" el simulador con los últimos cambios. Si obtiene un error, puede obtener una pista del número de línea de esa pantalla roja. Un par de deshacer lo llevará de regreso al estado de trabajo y comenzará de nuevo.
console.log('yeah, seriously.')
Creo que prefiero dejar que el programa se ejecute y registrar algunas informaciones que agregar un
debugger
punto de interrupción. (El depurador resistente es útil cuando se trata de trabajar con paquetes / bibliotecas externas y viene con autocompletado, para que sepa qué otros métodos puede utilizar).Enable Chrome Debugging
condebugger;
punto de quiebre en su programa.Bueno, depende del tipo de errores que haya encontrado y de sus preferencias sobre cómo depurar. Para la mayoría de los
undefined is not an object (evaluating 'something.something')
métodos 1 y 2 serán lo suficientemente buenos para mí.Mientras que tratar con bibliotecas externas o paquetes escritos por otros desarrolladores requerirá más esfuerzo para depurar, por lo tanto, una buena herramienta como
Chrome Debugging
A veces proviene de la plataforma react-native en sí misma, por lo que buscar en Google los problemas de react-native definitivamente ayudará.
Espero que esto ayude a alguien por ahí.
fuente
En lugar de Cmd+M, para Android Emulator Press F10en Windows. El emulador comienza a mostrar todas las opciones de depuración nativas de reacción.
fuente
ejecuta esto en la terminal para el registro de Android.
fuente
Si está utilizando Microsoft Visual Code, instale la extensión React Native Tools. Luego puede agregar puntos de ruptura simplemente haciendo clic en el número de línea deseado. Siga estos pasos para configurar y depurar la aplicación:
No olvide habilitar Debug JS Remote en el emulador si lo está usando.
fuente
Para Android: Ctrl + M (emulador) o Agitar el teléfono (En dispositivo) para revelar el menú.
Para iOS: Cmd + D o Agitar el teléfono para revelar el menú
Asegúrate de tener cromo.
En el menú revelado, seleccione la opción Debug JS Remote.
Chrome se abrirá automáticamente en localhost: 8081 / debugger-ui. También puede ir manualmente al depurador con este enlace.
Allí se muestra la consola y se pueden ver registros.
fuente
Para mí, la mejor forma de depurar en React-Native es usando "Reactotron" .
Instale Reactotron y luego agréguelos a su package.json:
ahora, solo es cuestión de iniciar sesión en su código. p.ej:
console.tron.log('debug')
fuente
Vaya a las fuentes en el menú superior y busque su archivo de clase js en el explorador de archivos del lado derecho
Puede poner puntos de interrupción en la vista y depurar el código allí como puede ver en la imagen.
fuente
Por defecto, mi simulador de ios no captaba las pulsaciones de teclas, por lo que cmd-D no funcionó. Tuve que activar la configuración del teclado usando el menú del simulador:
Hardware> Teclado> Teclado de conexión
Ahora cmd-D lanza la depuración de Chrome.
fuente
Para la aplicación de Android. Presione Ctrl + M select debug js de forma remota, se abrirá una nueva ventana en Chrome con url http: // localhost: 8081 / debugger-ui . Ahora puede depurar la aplicación en el navegador Chrome
fuente
Tener un espacio en la ruta del archivo evita que el Cmd+ Dfuncione. Moví mi proyecto a una ubicación sin espacio y finalmente conseguí que el depurador de Chrome funcionara. Parece un error .
fuente
Si desea habilitar la depuración de forma predeterminada:
Para que esto funcione en Android:
Referencia: Inicie una aplicación React Native con "Debug JS Remotely" habilitado de forma predeterminada
fuente
Muy simple solo dos comandos
fuente
Suponiendo que desea mostrar este menú en el emulador de Android
Luego, intente
⌘+m
abrir este diálogo de configuración de desarrollo en el emulador de Android en una Mac.Si no se muestra, vaya a
AVD > (click the pen to edit your emulator configuration) > advanced settings > check the enable keyboard input box
.Y luego vuelve a intentarlo
⌘+m
.Si aún no se muestra, vaya a la configuración del emulador en ejecución y en el
Send keyboard shortcuts to
cuadro combinado / desplegable, luego seleccione laEmulator controls (default)
opción.Y luego vuelve a intentarlo
⌘+m
.Espero que esto ayude, funcionó para mí.
fuente
Si está utilizando Redux, le recomiendo React Native Debugger. Incluye devtools de Chrome, pero también tiene devtools de Redux y devtools React.
Redux Devtools : esto le permite ver sus acciones y avanzar y retroceder por ellas. También le permite ver su tienda redux y tiene una función para diferenciar automáticamente el estado anterior con el estado actualizado de cada acción, para que pueda verlo a medida que avanza y retrocede a través de una serie de acciones.
React Devtools : esto le permite inspeccionar un determinado componente, es decir, todos sus accesorios, así como su estado de componente. Si tiene una parte del estado del componente que es un valor booleano, le permite hacer clic para alternarlo y ver cómo reacciona su aplicación cuando cambia. Gran característica
Chrome Devtools Le permite ver todas las salidas de su consola, usar puntos de interrupción, pausar en el depurador; etc. Características de depuración estándar. Si hace clic con el botón derecho en el área donde se enumeran sus acciones en Redux Devtools y selecciona 'Permitir inspección de red', puede inspeccionar sus llamadas API en la pestaña de red de Chrome Devtools, lo cual es genial.
En conclusión, ¡tener todo esto en un solo lugar es fantástico! Si no necesita uno de ellos, puede activarlo / desactivarlo. Obtenga React Native Debugger y disfrute la vida.
fuente
Esta es la forma alternativa de utilizar la aplicación reaccionar depurador nativo.
puede descargar la aplicación usando el siguiente enlace, es una muy buena aplicación para administrar la tienda redux junto con el código fuente.
reaccionar-nativo-depurador
ahora también puedes usar directamente el siguiente enlace para ayudarte.
herramientas de desarrollador de Chrome
fuente
Si está utilizando el emulador, use Ctrl+ My simulador Cmd+D
Haga clic en - Debug js remotamente
Google Chrome ve a la consola
fuente
También hay un muy buen nombre de depurador Reactotron. https://github.com/infinitered/reactotron
No tiene que estar en modo de depuración para ver algún valor de datos y hay muchas opciones.
ve a echar un vistazo que sea realmente útil. ;)
fuente
En React-Native, la depuración es mucho más fácil.
fuente
Paso 1: Lugar
debugger
donde quieras detener el script, como:Esto detendrá el depurador cuando el control llegue a este bloque de código.
Paso 2: Presione
Cmd+D
en el emulador ios yCmd+M
en el simulador de Android . Si tiene un dispositivo real, agite el dispositivo para abrir el menú de desarrollo, si no desea sacudir el dispositivo, siga este blogPaso 3: Seleccione
Enable Remote JS Debugging
, esto abrirá ChromePaso 4: selecciona
Developer Tools.
Paso 5: su depurador se detiene en la
Sources
pestaña donde haya escritodebugger
dentro de su código. Vaya a la consola y escriba los parámetros que desea depurar (que están presentes en el bloque de código) como: Para pasar al siguiente punto del depurador, vuelva a Fuentes -> haga clic en el botón Reanudar la ejecución del script (botón azul de la esquina derecha)Coloque el depurador, donde quiera pausar el guión.
¡Disfruta de la depuración!
fuente
Puedes usar Safari para depurar la versión iOS de tu aplicación sin tener que habilitar "Debug JS Remote", solo sigue los siguientes pasos:
fuente
Primero en su simulador de ios, si presiona la tecla [comando + D], puede ver esta pantalla.
Luego haga clic en el botón Debug JS de forma remota.
Después de que pueda ver la página React Native Debugger como esta.
¡Y luego abra su inspector [f12], y vaya a la pestaña de consola, depúrelo! :)
fuente
React Native 0.62 Lanzado - La solución oficial es Flipper 🚀
Flipper es Android y iOS Herramientas de depuración móvil sin usar el modo de depuración en reaccionar nativo.
Desde RN 0.62 (Ver este enlace ), Flipper se inicializa con el proyecto predeterminado.
Flipper tiene algunos complementos para la depuración. Los plugins incluyen
Layout
,Network
,Shared preferences
El mayor beneficio de Flipper no son muchos complementos, pero también puede ver la depuración de la consola del dispositivo Android / iOS fácilmente.
El Flipper también te alerta sobre el bloqueo o el rechazo de red.
El complemento de diseño incluye el modo de accesibilidad y el modo de destino.
También puede ver la solicitud / respuesta de red sin procesar en su Aplicación.
fuente