Javascript Babel 7升级并从集合创建阵列

Javascript Babel 7升级并从集合创建阵列,javascript,babeljs,Javascript,Babeljs,由于升级到Babel 7,我无法使用spread操作符从Set创建新数组 例如: const uniqueNums = [ ...new Set([ 0, 1, 1 ]) ]; // => Set { 0, 1 } 预期结果是: /=>[0,1] 如果我使用Array.from(新集合([0,1,1]))它会按预期工作 它按预期工作,但我一定是在我的巴别塔升级的某个地方出错了 我以前的.babelrc: { "presets": [ [ "env",

由于升级到Babel 7,我无法使用spread操作符从
Set
创建新数组
例如:

const uniqueNums = [ ...new Set([ 0, 1, 1 ]) ];
// => Set { 0, 1 }
预期结果是:

/=>[0,1]
如果我使用
Array.from(新集合([0,1,1]))
它会按预期工作

它按预期工作,但我一定是在我的巴别塔升级的某个地方出错了

我以前的
.babelrc

{
  "presets": [
    [
      "env",
      {
        "modules": false,
        "targets": {
          "browsers": "> 1%",
          "uglify": true
        },
        "useBuiltIns": true
      }
    ],
    "react"
  ],
  "plugins": [
    "syntax-dynamic-import",
    "transform-object-rest-spread",
    [
      "transform-class-properties",
      {
        "spec": true
      }
    ]
  ]
}
升级到
babel.config.js

module.exports = function(api) {
    return {
      presets: [
        [
          '@babel/preset-env',
          {
            modules: false,
            targets: {
              browsers: '> 5%, not dead'
            },
            forceAllTransforms: true,
            useBuiltIns: 'usage',
            corejs: 3
          }
        ],
        '@babel/preset-react'
      ],
      plugins: [
        '@babel/plugin-syntax-dynamic-import',
        '@babel/plugin-proposal-object-rest-spread',
        '@babel/plugin-proposal-class-properties',
        [
          '@babel/plugin-transform-spread',
          {
            loose: true
          }
        ]
      ]
    };
}
我缺少的预期配置是什么

环境详细信息:
节点:10.16.2
巴别塔:7.5.5

纱线:1.17.3

您添加了
['@babel/plugin transform-spread',{lose:true}]
,这在您的原始配置中是不存在的。有什么原因吗?@loganfsmyth如果没有它,应用程序的某些部分会因
未捕获类型错误而中断:传播不可修复实例的尝试无效。我想可能有一些不正确的实现,但现在我需要升级才能按原样使用代码。启用的松散配置修复了它。您是否安装了依赖项
@babel/polyfill
?@ridermansb抱歉,没有。我选择了快速路径,将所有内容转换为使用
数组。。和我一样:(