@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
- Yarn
- pnpm
npm install --save-dev @babel/plugin-proposal-optional-chaining-assign
yarn add --dev @babel/plugin-proposal-optional-chaining-assign
pnpm add --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"
選取要使用的提案
"2023-07"
:在tc39/proposal-optional-chaining-assignment@49d055c44b
中定義的第 1 階段提案,於 2023 年 7 月的 TC39 會議中提出。