J'ai installé Jest v17.0.3 dans mon projet React.
Quand je lance jest localement, cela fonctionne bien, mais sur le serveur de build, il échoue avec:
Erreur: impossible de trouver le module 'react/lib/ReactComponentTreeHook' de 'ReactDebugTool.js'
Les deux machines exécutent la version 6.9.1 du nœud et la version 4.0.2 de npm.
utilisez la même version de react et react-dom. Mon problème a été résolu après avoir utilisé cette commande
npm install --save [email protected] [email protected]
ce problème se produit spécialement sur react 15.4.0 ci-dessus.
Pouvez-vous vérifier la version de React que vous utilisez? Est-ce la même chose sur les deux serveurs? J'essaierais de supprimer node_modules
et réinstaller les dépendances. La raison pour laquelle je suggère cela est que dans React v15.4.0, vous ne pouvez pas importer des API privées et il semble que ReactDebugTools.js
tente d'importer depuis react/lib/...
.
Du blog à propos de React v15.4.0 ( Link ):
Cependant, il est possible que vous ayez importé des API privées à partir de react/lib/*, ou qu'un package sur lequel vous comptez puisse les utiliser. Nous tenons à vous rappeler que cela n'a jamais été pris en charge et que vos applications ne doivent pas s'appuyer sur des API internes. Les internes React continueront de changer pendant que nous travaillons pour améliorer React mieux).
J'espère que cela t'aides!
Dans les dernières versions de react, nous voyons souvent cette erreur car nous avons chargé 2 versions de react:
Pour vous assurer que vous n'avez qu'une seule version, exécutez ce qui suit dans votre terminal:
Les versions react et react-dom doivent être identiques. Si l'un d'eux renvoie plus d'une version, cela n'est pas pris en charge. Vous devez ensuite le corriger dans votre package correspondant.json