Babel 7 和 webpack 4 不适用于数组中的条件传播操作[短路语法]



我遇到了一个特殊的问题,即从我使用 stage-0 的先前版本升级到 Babel 7 后短路语法不起作用,并且它没有任何问题

不工作:

...isCSCProfile && [{ isComplete: progressbarStates[3] === PROGRESS_BAR_SUCCESS, messageKey: commonOrderMessages.service_request_header, link: "serviceRequest-header" }],

工程:

...(isCSCProfile ? [{ isComplete: progressbarStates[3] === PROGRESS_BAR_SUCCESS, messageKey: commonOrderMessages.service_request_header, link: "serviceRequest-header" }] : []),

我已经在 webpack 中包含 Babel-Polyfill 插件,我正在测试最新的 chrome 版本

所以问题是我应该包含哪个插件才能在不更改代码的情况下使其工作

我假设isCSCProfile是布尔值。如果isCSCProfile为 false,那么您在第一种情况下尝试传播布尔值,这是行不通的。

在对此进行了更多深入研究之后,似乎我对传播语法不适用于布尔值是错误的。@babel/plugin-transform-spread有一个名为loose的选项,它应该跳过"nullish"值,这就是您想要的。还有一个关于松散模式一致性的未决问题,这很可能是它无法正常工作的原因。

最新更新