之前本地TS用的是awesome-typescript-loader,TS的配置target是es5,升级为Vite构建之后,TS的配置target改为ESNext,打包的时候就开始报错,不识别可选链?.的这种写法,原因在于target的修改
解决方案是修改TypeScript的loader,改为babel-loader,用@babel/preset-typescript的方式来处理TypeScript,因为@babel/preset-typescript的TS配置target也是ESNext
{
loader: 'babel-loader',
options: {
presets: [
'@babel/preset-env',
'@babel/preset-react',
'@babel/preset-typescript'
]
}
}
网友评论