2016-12-01 8 views
13

नहीं मिला है मैंने अपने प्रतिक्रिया प्रोजेक्ट में जेस्ट v17.0.3 स्थापित किया है।जेस्ट त्रुटि के साथ विफल रहता है: मॉड्यूल 'प्रतिक्रिया/lib/ReactComponentTreeHook'

जब मैं स्थानीय स्तर पर हंसी चलाने यह ठीक काम करता है, लेकिन निर्माण सर्वर पर इसके साथ विफल रहता है:

Error: Cannot find module 'react/lib/ReactComponentTreeHook' from 'ReactDebugTool.js'

दोनों मशीनों नोड संस्करण 6.9.1 और NPM संस्करण 4.0.2 चल रहे हैं।

+0

मुझे आज भी इसी तरह की समस्या थी, मुझे लगता है कि इसे लापता निर्भरताओं के साथ करना है क्योंकि यह मेरे 'package.json' फ़ाइल को बदलने के संदर्भ में मेरे लिए हुआ था। –

+0

क्या आपको कोई जवाब मिला? मेरी भी यही समस्या है। – Flavien

+0

मैंने अपनी बिल्ड स्क्रिप्ट से गलती से 'एनपीएम इंस्टॉल' हटा दिया था, और इसके कारण मेरे पुराने मॉड्यूल थे। –

उत्तर

11

प्रतिक्रिया और प्रतिक्रिया-dom के समान संस्करण का उपयोग करें। इस समस्या का उपयोग करने के बाद मेरी समस्या

npm install --save [email protected] [email protected] 

यह समस्या विशेष रूप से 15.4.0 प्रतिक्रिया पर होती है।

+0

मेरे मामले में यह 'प्रतिक्रिया-परीक्षण था -रेन्डरर 'जो प्रतिक्रिया और प्रतिक्रिया-डोम के बराबर नहीं था। – Johnride

5

क्या आप देख सकते हैं कि आप किस प्रतिक्रिया का उपयोग कर रहे हैं? क्या यह दोनों सर्वरों पर समान है? मैं node_modules को हटाने और निर्भरताओं को पुनर्स्थापित करने का प्रयास करूंगा। इसका कारण यह है कि मैं इस बात का सुझाव दे रहा हूं कि रिएक्ट v15.4.0 में आप निजी एपिस आयात नहीं कर सकते हैं और ऐसा लगता है कि ReactDebugTools.jsreact/lib/... से आयात करने का प्रयास कर रहा है।

ब्लॉगपोस्ट से के बारे में प्रतिक्रिया v15.4.0 (Link):

However, there is a possibility that you imported private APIs from react/lib/*, or that a package you rely on might use them. We would like to remind you that this was never supported, and that your apps should not rely on internal APIs. The React internals will keep changing as we work to make React better.

आशा इस मदद करता है!

-3

मेरे पास एक ही समस्या थी और मैंने node_modules को हटा दिया और npm इंस्टॉल किया और यह समस्या ठीक कर दी।

+7

जबकि उत्तरों की हमेशा सराहना की जाती है, इस प्रश्न को 2 महीने पहले पूछा गया था, और पहले से ही एक स्वीकार्य समाधान था। स्वीकार्य समाधान में आपके द्वारा उठाए गए ** सटीक ** बिंदु को भी शामिल किया गया है। कृपया उत्तर देने के लिए शीर्ष पर 'बंपिंग' प्रश्नों से बचने का प्रयास करें, जब तक कि प्रश्न को हल के रूप में पहले ही चिह्नित नहीं किया गया हो, या आपको समस्या के लिए नाटकीय रूप से बेहतर वैकल्पिक दृष्टिकोण मिल गया :) –

2

के नवीनतम संस्करण में प्रतिक्रिया हम अक्सर के रूप में हम प्रतिक्रिया के 2 संस्करण लोड किया है यह त्रुटि दिखाई:

सुनिश्चित करें कि आप सिर्फ 1 संस्करण है बनाने के लिए, चलाने के लिए अपनी टर्मिनल में निम्नलिखित:

  1. NPM ls प्रतिक्रिया-डोम enter image description here

  2. NPM ls प्रतिक्रिया enter image description here

प्रतिक्रिया और प्रतिक्रिया-दोनों संस्करण दोनों समान होने की आवश्यकता है। यदि इनमें से कोई भी 1 संस्करण से अधिक लौटाता है तो यह समर्थित नहीं है। आपको इसे अपने संबंधित पैकेज में सही करना होगा। जेसन

संबंधित मुद्दे