【BUG 反馈】开启脚本压缩后, ?? (空值合并)被老版 terser 误优化导致逻辑错误(Android 构建产物 a ?? b 变成 a )

环境

  • Cocos Creator 版本:3.8.x
  • 构建目标:Android
  • 构建设置:「压缩脚本」已开启
  • 复现平台:原生构建产物
    问题描述

开启脚本压缩构建后,产物中出现对空值合并运算符 ?? 的错误化简。
代码:
if (!(keepAlive ?? popup.keepAlive)) {
// …
}

压缩后的构建产物中变成了:
if (!keepAlive) {
// …
}

原生端的terser版本太低了 要升级啊