javascript - Babel 7 升级并从集合中创建一个数组
问题描述
自从升级到 Babel 7 后,我无法使用扩展运算符从Set
.
例如:
const uniqueNums = [ ...new Set([ 0, 1, 1 ]) ];
// => Set { 0, 1 }
预期结果是:
// => [ 0, 1 ]
如果我这样做Array.from(new Set([ 0, 1, 1 ]))
,它会按预期工作。
它按预期工作,但我一定是在 Babel 升级的某个地方出错了。
我以前的.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
babel:7.5.5
yarn:1.17.3
解决方案
推荐阅读
- c++ - 在 QTableView 中显示来自 QAbstractListModel 的修改数据
- oracle - Oracle Apex 经典报表 PL/SQL 函数体返回 SQL 查询
- c++ - 如何修复我的 C++ 代码?(不匹配运算符)
- php - 如何从已完成的订单中删除一个项目 (wc_delete_order_item ())
- vue.js - VueJs图像未显示
- selenium - Selenium IDE Web 驱动程序 Chrome
- google-apps-script - 为什么我的共享用户不能使用我在 Google 表格中写入的脚本?
- python - 带有 Python 的 Google 表格 API
- python - 如何修改 Pytorch 中的 loss.backward() 以解决 np.nan 的问题?
- javascript - 按钮 OnClick 仅返回适用于第一个元素