TypeScript 中的 ? 语法用于标记属性为可选的,但是 Babel 默认不支持该语法。要解决这个问题,需要安装 @babel/plugin-proposal-optional-chaining
插件并在 Babel 配置文件中添加该插件。具体步骤如下:
@babel/plugin-proposal-optional-chaining
:npm install --save-dev @babel/plugin-proposal-optional-chaining
module.exports = {
presets: [
"@babel/preset-env",
"@babel/preset-typescript"
],
plugins: [
"@babel/plugin-proposal-optional-chaining"
]
};
以上代码中的 babel.config.js
可以根据具体项目情况修改为其他 Babel 配置文件,如 .babelrc
。
添加完插件后,再次运行 Babel 即可编译 TypeScript 中的 ? 语法。