Existe-t-il un moyen de connaître la version d'exécution de React dans le navigateur?
javascript
reactjs
Leojh
la source
la source
__REACT_DEVTOOLS_GLOBAL_HOOK__.renderers.values().next()["value"]["version"]
Réponses:
React.version
est ce que vous recherchez.Cependant, il n'est pas documenté (pour autant que je sache) donc ce n'est peut-être pas une fonctionnalité stable (c'est-à-dire bien que peu probable, il peut disparaître ou changer dans les versions futures).
Exemple avec
React
importé sous forme de scriptExemple avec
React
importé en tant que moduleÉvidemment, si vous importez en
React
tant que module, il ne sera pas dans la portée globale. Le code ci-dessus est destiné à être fourni avec le reste de votre application, par exemple en utilisant webpack . Il ne fonctionnera pratiquement jamais s'il est utilisé dans la console d'un navigateur (il utilise une entrée nue).Cette seconde approche est celle recommandée. La plupart des sites Web l'utiliseront. create-react-app fait cela (il utilise webpack dans les coulisses). Dans ce cas,
React
est encapsulé et n'est généralement pas accessible du tout en dehors du bundle (par exemple dans la console d'un navigateur).la source
version
propriété du module.Uncaught ReferenceError: require is not defined
etUncaught ReferenceError: React is not defined
Depuis la ligne de commande:
la source
Ouvrez Chrome Dev Tools ou équivalent et exécutez-le
require('React').version
dans la console.Cela fonctionne également sur des sites Web comme Facebook pour savoir quelle version ils utilisent.
la source
ReferenceError: require is not defined
Une fois React Devtools installé, vous pouvez l'exécuter à partir de la console du navigateur:
Qui produit quelque chose comme:
la source
Il n'est pas certain que des variables globales ECMAScript aient été exportées et html / css n'indique pas nécessairement React. Alors regardez dans le .js.
Méthode 1: Rechercher dans ECMAScript:
Le numéro de version est exporté par les deux modules react-dom et react mais ces noms sont souvent supprimés par regroupement et la version est masquée dans un contexte d'exécution inaccessible. Un point d'arrêt intelligent peut révéler la valeur directement, ou vous pouvez rechercher l'ECMAScript:
Méthode 2: utilisez un point d'arrêt DOM:
Inspect Element
Elements
voletBreak On… - subtree modifications
Sources
voletCall Stack
sous-voletrender
entrée, c'estReactDOM.render
render
- dessous , ie. le code qui appelle renderreact-dom
module exporte l'objetversion: "15.6.2"
, ie. toutes les valeurs exportées parreact-dom
La version est également injectée dans les outils de développement React, mais pour autant que je sache, elle ne s'affiche nulle part.
la source
Ouvrez la console, puis exécutez
window.React.version
.Cela a fonctionné pour moi dans Safari et Chrome lors de la mise à niveau de 0.12.2 à 16.2.0.
la source
Dans le fichier index.js, remplacez simplement le composant App par "React.version". Par exemple
J'ai vérifié cela avec React v16.8.1
la source
Pour une application créée avec create-react-app, j'ai réussi à voir la version:
L'application a été déployée sans carte source.
la source
Dans un projet existant, un moyen simple de voir la version React consiste à accéder à une
render
méthode de n'importe quel composant et à ajouter:<p>{React.version}</p>
Cela suppose que vous importez React comme ceci:
import React from 'react'
la source
Installez d'abord les outils de développement React s'ils ne sont pas installés, puis utilisez le code ci-dessous dans la console du navigateur:
la source