Вы можете применить свою логику в пределах main.ts
.Это начальный файл углового приложения, и вы можете предотвратить загрузку angular.Взгляните на это блиц
Сначала я вставил фрагмент HTML в index.html
<div id="ie-message" style="display: none">This is IE message</div>
Затем я просто скопировал ваш код в main.ts
var browser = (function(agent){
switch(true){
case agent.indexOf("edge") > -1: return "edge";
case agent.indexOf("opr") > -1 && !!window.opr: return "opera";
case agent.indexOf("chrome") > -1 && !!window.chrome: return "chrome";
case agent.indexOf("trident") > -1: return "ie";
case agent.indexOf("firefox") > -1: return "firefox";
case agent.indexOf("safari") > -1: return "safari";
default: return "other";
}
})(window.navigator.userAgent.toLowerCase());
console.log(browser);
if(browser === 'ie'){
// if the browser is IE, remove "display: none" from IE message template
document.getElementById('ie-message').style.display = 'block';
} else {
platformBrowserDynamic().bootstrapModule(AppModule).then(ref => {
// Ensure Angular destroys itself on hot reloads.
if (window['ngRef']) {
window['ngRef'].destroy();
}
window['ngRef'] = ref;
// Otherwise, log the boot error
}).catch(err => console.error(err));
}