2017-04-05 90 views
0

我的目標是在命令行上運行包含console.log語句的ES6 JavaScript代碼,以便在與我的React Native應用程序集成之前幫助調試代碼。這段代碼只包含JS函數。如何設置babel-cli在命令行上運行react-native ES6 JavaScript代碼?

這是我的嘗試:

Install babel-cli 
    npm install --save-dev babel-cli 

File: .babelrc (in project root) 
{ 
    "presets": ["react-native"] 
} 

Run sandbox: 
./node_modules/.bin/babel-node app/components/sandbox.js 

我得到以下運行時錯誤:

/react-native/myapp/source/node_modules/react-native/Libraries/react-native/react-native.js:15 
    if (__DEV__) { 
     ^
     ReferenceError: __DEV__ is not defined 

我有這方面的工作一次。

我缺少什麼?

回答

1

React Native與Node不同,它不僅僅是編譯代碼。您無法直接在Node上運行React Native應用程序,就像您無法在Node上運行網頁一樣。

測試時,您可以使用jest嘲諷的功能來模擬陣營本地特定模塊。預設爲jest的react-native已經這樣做了。

+0

我想在命令行上運行一個只包含JS函數的JS模塊。沒有JSX,也沒有反應原生的進口。我曾經工作過一次。現在我得到一個運行時錯誤「__DEV__未定義」 –

+0

從錯誤消息看來,您似乎有一個針對React Native的導入。儘管沒有查看代碼很難說出任何內容。 – satya164

+0

謝謝satya164。你是對的,一旦我刪除了導入導入反應本地導入的文件的導入,JS代碼就會運行。 –