2016-01-01 9 views
9

के साथ 'अप्रत्याशित टोकन' त्रुटि का कारण बनता है, मैं एक प्रतिक्रियात्मक मूल परियोजना शुरू कर रहा हूं, और मैं अपने कोड के लिए ईसीएमएस्क्रिप्ट 2015 और मेरे यूनिट परीक्षणों के लिए मोचा का उपयोग करना चाहता हूं। मैं babel-register स्थापित किया है, babel-preset-es2015, और babel-preset-stage-2, और मेरी परियोजना की package.json फ़ाइल को यह कहा:प्रतिक्रियात्मक कारणों में स्प्रेड ऑपरेटर मोचा

"babel": { 
    "presets": ["es2015", "stage-2"] 
} 

लेकिन जब मैं mocha --compilers js:babel-register चलाने के लिए और एक मॉड्यूल एक प्रतिक्रिया मूल निवासी एपीआई का आयात करता है कि परीक्षण करने की कोशिश ...

node_modules/react-native/Libraries/react-native/react-native.js:107 
...require('React'), 
^^^ 

SyntaxError: Unexpected token ... 

यह एक कोलाहल है:

import React from 'react-native'; 

let {Dimensions} = React; 

... मैं प्रतिक्रिया प्रसार द्वारा प्रयोग किया जाता ऑपरेटर के बारे में त्रुटि बग-स्टेज -2 प्रीसेट को स्प्रेड ऑपरेटर के लिए समर्थन नहीं जोड़ना चाहिए? या मैं कुछ और याद कर रहा हूँ?

+0

मैं बस यहाँ प्रसार ऑपरेटर के आपके उपयोग समझ में नहीं आता है। आप इसका उपयोग क्यों कर रहे हैं? – void

+2

मैं फैल ऑपरेटर का उपयोग नहीं कर रहा हूं। प्रतिक्रिया मूल इसका उपयोग कर रही है, और मैं अपने मॉड्यूल में से एक में प्रतिक्रिया मूल आयात कर रहा हूं। –

+0

यदि आप preview.json को प्रतिक्रिया-मूल (https://github.com/facebook/react-native/blob/master/package.json) में देखते हैं, तो आप देखेंगे कि यह लगभग 30 बेबेल से संबंधित पैकेज आयात करता है। उन सभी को जोड़ने के बिना, आप शायद इन प्रकार के हिकअप को गायब पैकेजों के साथ अनुभव करना जारी रखेंगे। –

उत्तर

2

मैंने इसे भी देखना शुरू कर दिया। एक बग की तरह लगता है। AFAIK बेबेल node_modules के तहत फ़ाइलों को संकलित नहीं करता है क्योंकि उन्हें हमेशा precompiled किया जाना चाहिए।

इसके अलावा इस एक बहुत हाल ही में

https://github.com/facebook/react-native/commit/f9b744d50137de25357994fe2e829f98104e2242

+0

मुझे संकलित करने के लिए एक साधारण वेबपैक स्क्रिप्ट के साथ एक ही त्रुटि मिलती है और एक छोटी टाइपस्क्रिप्ट फ़ाइल लोड करें। मेरा लोडर बेबेल का आह्वान नहीं करता है: '{test: /\.tsx?$/, बहिष्कृत करें:/node_modules /, लोडर: 'ts'} 'लोडर जो इस पंक्ति को आमंत्रित करता है वह है' ts-loader ' – timecc

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