Angular 5项目IE11中URLSearchParams未定义,如何通过polyfills.ts解决?
解决Angular 5在IE11中URLSearchParams未定义的问题
当然可以通过polyfills.ts引入相关内容解决这个问题!IE11对ES6+的API支持不完善,URLSearchParams就是其中一个不被原生支持的接口,这也是你遇到这个错误的核心原因。下面是具体的解决步骤:
第一步:安装对应的polyfill包
打开终端,在项目根目录下执行以下命令,安装专门适配URLSearchParams的兼容包:npm install url-search-params-polyfill --save如果你习惯用Yarn管理依赖,换成这个命令即可:
yarn add url-search-params-polyfill第二步:在polyfills.ts中导入polyfill
打开项目src目录下的polyfills.ts文件,在文件末尾或者其他polyfill语句的下方添加一行导入代码:import 'url-search-params-polyfill';这个文件是Angular专门用来加载所有必要兼容补丁的入口,添加后构建项目时,会自动把这个polyfill注入到代码中,让IE11能够识别并正常使用
URLSearchParams。额外注意事项
- 完成操作后,记得重启开发服务器或者重新构建项目,确保polyfill生效。
- 测试时建议清空IE11的浏览器缓存,避免旧的未兼容代码残留导致问题依旧。
内容的提问来源于stack exchange,提问作者Alessandro Celeghin
相关产品推荐
相关产品推荐

