在生产中使用 Babel - 如何预编译脚本

Using Babel in Production - How to precompile scripts

我正在使用 Oracle Application Express (APEX) 构建应用程序[因此不存在 Node]。

我有两个问题在某种程度上与概念相关。

问题 #1:

我已将 React.js 库包含在我的所有页面中以使用它的一些功能。

我正在使用 babel 将我的 JSX 转换为简单的 JS。一切正常。

但我的控制台中不断收到此警告:

You are using the in-browser Babel transformer. 
Be sure to precompile your scripts for production - https://babeljs.io/docs/setup/

我知道我必须预编译我的脚本,但我不知道如何做。我参观了 link,它让我更加困惑。

问题 #2:

我遇到的另一个问题是,我将所有与 React 相关的代码都放在一个单独的 .js 文件中,并且我已使用此文件将其嵌入到我的页面中:

<script src="someJSFile.js" type="text/babel"></script>

将类型设置为 "text/babel" 会引发此警告:

Fetching scripts with an invalid type/language attributes is deprecated 
and will be removed in M56, around January 2017. 
See https://www.chromestatus.com/features/5760718284521472 for more details.

这个问题有解决办法吗?

问题 1: 这与您选择的 bunlder 相关联(请参阅下面的问题 2)。无论你选择哪个,都将允许你将节点环境设置为生产环境,这将使 React 处于 "production" 模式——基本上清除所有不需要的(但有帮助的)开发消息和检查。

问题 2:您最终将需要一些模块捆绑器。 Webpack 是目前的 goto。 Webpack Site

备选方案包括:

  • Gulp + Browserify
  • 汇总

编辑:我知道你说过 "no node"。您不需要节点到 运行 服务器上的任何内容,只需要在您构建文件的本地机器上。 Node 很容易安装在几乎任何本地机器上