2017-04-05 85 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代码就会运行。 –