Ruby on rails `babel loader `在生产环境中` rake资产:预编译'时出现依赖项错误

Ruby on rails `babel loader `在生产环境中` rake资产:预编译'时出现依赖项错误,ruby-on-rails,webpack,babeljs,babel-loader,Ruby On Rails,Webpack,Babeljs,Babel Loader,我继承了一个Rails应用程序,并试图让它在production 应用程序使用 webpacker-3.5.5ruby-gem管理JavaScript资产 webpackv3.12.0 sprocketsgem管理传统CSS/图像资产 作为webpacker gem配置的一部分,它在JSX/React资产上使用了babel loader。我不太清楚这是做什么的,但我猜这是某种预处理器 module.exports = { test: /\.jsx?$/, exclude: /node

我继承了一个Rails应用程序,并试图让它在
production

应用程序使用

  • webpacker-3.5.5
    ruby-gem管理JavaScript资产
  • webpackv3.12.0
  • sprockets
    gem管理传统CSS/图像资产
作为webpacker gem配置的一部分,它在JSX/React资产上使用了
babel loader
。我不太清楚这是做什么的,但我猜这是某种预处理器

module.exports = {
  test: /\.jsx?$/,
  exclude: /node_modules/,
  use: [{
    loader: "babel-loader",
    options: {
      cacheDirectory: true,
      // Use .babelrc - not webpack config JS - to define all options
      babelrc: true
    }
  }]
}
当我尝试在生产服务器上运行
rakeassets:precompile
时,它在尝试使用
webpack构建资产的步骤中出错

>rake资产:预编译
纱线安装v1.17.3
warning package.json:无许可证字段
警告delly@1.0.0:无许可证字段
[1/4]正在解析包。。。
成功已经是最新的。
在1.18秒内完成。

当您在生产模式下运行
rake assets:precompile
时,安装了webpack,它还使用生产模式运行
webpack
,在这种情况下,如果您查看
包,则只加载
依赖项中设置的包。json
,在
devDependencies
中设置了
babel loader
\


解决方案是什么?将
babel loader
移动到
dependencies

谢谢!我不知道那部分是干什么用的。那么其他所有的
babel-*
项目呢,有些甚至从
@babel-*
开始。我也要搬吗?一般来说,我不确定babel dependency Tree中需要什么。除了
eslint
jest
webpack dev server