升级@azure/msal-browser至v3.2.0后遇导入错误,寻求解决方法
解决@azure/msal-browser v3.2.0升级后的编译错误
针对你升级后出现的Can't import the named export 'CryptoOps' from non EcmaScript module编译错误,可尝试以下解决方案:
调整Webpack配置解析.mjs模块
错误根源是Webpack未正确识别node_modules中.mjs文件的模块类型,需在webpack.config.js中添加规则:module.exports = { module: { rules: [ { test: /\.mjs$/, include: /node_modules/, type: 'javascript/auto' } ] } };该配置会让Webpack将node_modules内的.mjs文件当作普通JS模块处理,规避ES模块解析冲突。
升级构建工具依赖
若使用Create React App,旧版react-scripts对ES模块支持不足,执行命令升级:npm update react-scripts若使用Vite等其他构建工具,同步升级到支持ES模块的最新稳定版本。
降级到兼容的msal-browser版本
若上述方法无效,可先降级到v3.x分支的稳定版本,比如v3.1.0,同时关注官方修复进度:npm install @azure/msal-browser@3.1.0修复依赖树版本冲突
执行命令检查@azure/msal-common的版本是否与msal-browser匹配:npm ls @azure/msal-common若存在版本冲突,执行去重命令:
npm dedupe @azure/msal-common或手动指定与msal-browser v3.2.0匹配的
@azure/msal-common@3.2.0版本。
内容的提问来源于stack exchange,提问作者Pooya Valinataj
相关产品推荐
相关产品推荐

