¿Hay alguna forma de conocer la versión en tiempo de ejecución de React en el navegador?
javascript
reactjs
leojh
fuente
fuente
__REACT_DEVTOOLS_GLOBAL_HOOK__.renderers.values().next()["value"]["version"]
Respuestas:
React.version
es lo que buscas.Sin embargo, no está documentado (que yo sepa) por lo que puede que no sea una característica estable (es decir, aunque es poco probable, puede desaparecer o cambiar en versiones futuras).
Ejemplo con
React
importado como scriptEjemplo con
React
importado como móduloObviamente, si importa
React
como módulo, no estará en el ámbito global. El código anterior está destinado a integrarse con el resto de su aplicación, por ejemplo, mediante webpack . Prácticamente nunca funcionará si se usa en la consola de un navegador (está usando entrada simple).Este segundo enfoque es el recomendado. La mayoría de los sitios web lo usarán. create-react-app hace esto (está usando webpack detrás de escena). En este caso,
React
está encapsulado y generalmente no es accesible fuera del paquete (por ejemplo, en la consola de un navegador).fuente
version
propiedad del módulo.Uncaught ReferenceError: require is not defined
yUncaught ReferenceError: React is not defined
Desde la línea de comando:
fuente
Abra Chrome Dev Tools o equivalente y ejecútelo
require('React').version
en la consola.Eso también funciona en sitios web como Facebook para averiguar qué versión están usando.
fuente
ReferenceError: require is not defined
Con React Devtools instalado, puede ejecutar esto desde la consola del navegador:
Lo que genera algo como:
fuente
No es seguro que se hayan exportado variables globales de ECMAScript y html / css no necesariamente indica React. Así que busque en el .js.
Método 1: busque en ECMAScript:
Ambos módulos, react-dom y react, exportan el número de versión, pero esos nombres a menudo se eliminan mediante la agrupación y la versión se oculta dentro de un contexto de ejecución al que no se puede acceder. Un punto de interrupción inteligente puede revelar el valor directamente, o puede buscar en ECMAScript:
Método 2: use un punto de interrupción DOM:
Inspect Element
Elements
panelBreak On… - subtree modifications
Sources
panelCall Stack
subpanelrender
entrada, esto esReactDOM.render
render
, es decir. el código que invoca renderreact-dom
módulo exporta el objetoversion: "15.6.2"
, es decir. todos los valores exportados porreact-dom
La versión también se inyecta en las herramientas de desarrollo de React, pero hasta donde yo sé no se muestra en ninguna parte.
fuente
Abra la consola, luego ejecute
window.React.version
.Esto funcionó para mí en Safari y Chrome mientras actualizaba de 0.12.2 a 16.2.0.
fuente
En el archivo index.js, simplemente reemplace el componente de la aplicación con "React.version". P.ej
He comprobado esto con React v16.8.1
fuente
Para una aplicación creada con create-react-app logré ver la versión:
La aplicación se implementó sin mapa de origen.
fuente
En un proyecto existente, una forma sencilla de ver la versión de React es ir a un
render
método de cualquier componente y agregar:<p>{React.version}</p>
Esto supone que importa React así:
import React from 'react'
fuente
Primero instale las herramientas de desarrollo de React si no están instaladas y luego use el código de ejecución a continuación en la consola del navegador:
fuente