在Angular 8应用程序中,如果要在IE11上加载type="module"脚本而不是es5,可以按照以下步骤进行设置:
tsconfig.json文件。"target": "es5"选项,将目标编译为es5。{
"compilerOptions": {
"target": "es5",
...
},
...
}
@babel/preset-env和core-js作为依赖项。npm install --save-dev @babel/preset-env core-js
.browserslistrc的文件,并在其中添加所需的浏览器支持。> 0.5%
last 2 versions
IE 11
babel.config.js的文件,并添加以下内容:module.exports = function(api) {
api.cache(true);
const presets = [
[
"@babel/preset-env",
{
useBuiltIns: "usage",
corejs: 3
}
]
];
return {
presets
};
};
angular.json文件中的build配置,将es5BrowserSupport设置为true。"build": {
"builder": "@angular-devkit/build-angular:browser",
"options": {
...
"es5BrowserSupport": true
},
...
}
polyfills.ts文件,确保以下导入语句处于注释状态:// import './polyfills-es5';
// import './polyfills';
ng serve
通过以上步骤,应用程序将在IE11上加载type="module"脚本而不是es5。