我有非常新鲜的 Rails 应用程序,我正在尝试向uppy
它添加文件上传器。不幸的是,当我需要@uppy/core
文件时,我遇到了Cannot assign to read only property 'exports' of object '#<Object>'
错误。
这个错误是由于 Ecmaimport
和 CommonJS都module.exports =
在一个文件中造成的。我检查了 uppy 源代码,node_modules
发现有问题的文件没有import
- 但是它存在于浏览器接收的版本中,就在"use_strict"
:
import _regeneratorRuntime from "@babel/runtime/regenerator";
这表明 babel 插件决定将import
语句注入到 CommonJS 文件中,从而无法加载该文件。
@babel/plugin-transform-runtime'
从 babel.config.js 中删除解决了这个问题——但它也破坏@babel/preset-env
了需要全局再生运行时对象。
我在这里创建了一个最小的复制应用程序:https ://github.com/BroiSatse/babel-issue 。这是一个全新的 rails 安装,没有 js 配置更改,除了@uppy/core
具有单一路由到虚拟操作和import Uppy from '@uppy/core'
webpack/packs/application.js 的依赖项。
任何帮助表示赞赏,我什至不知道在 github 上哪里提出这个问题。