跳至主要内容

@babel/plugin-proposal-optional-chaining-assign

转换赋值表达式左侧的可选链式调用。

示例

input.js
function doSomething(maybeOptions) {
maybeOptions?.retries = 5;
}

将被转换为

output.js
function doSomething(maybeOptions) {
maybeOptions !== null && maybeOptions !== void 0 && maybeOptions.retries = 5;
}

安装

npm install --save-dev @babel/plugin-proposal-optional-chaining-assign

用法

babel.config.json
{
"plugins": [
"@babel/plugin-proposal-optional-chaining-assign",
{
"version": "2023-07"
}
]
}

通过 Node API

JavaScript
require("@babel/core").transformSync("code", {
plugins: [["@babel/plugin-proposal-optional-chaining-assign", {
"version": "2023-07"
}]],
});

选项

假设

此插件受 noDocumentAll 假设的影响。

version

必需。

"2023-07"

选择要使用的提案

参考