我使用Angular开发了一个客户端图形界面。应用程序的用户必须能够从 Internet Explorer 查看图形界面。问题在于Internet Explorer仅显示空白页面,什么也不会显示。其他浏览器正确显示Angular应用程序。我知道我必须使用polyfills来执行此操作,但是我对polyfills的所有尝试都失败了。那么,什么是正确的方法呢?
我使用 Angular 8 , NodeJS v10.15.3 ,并且我的Angular应用程序实现了一些 web组件和 Angular路由器< / strong>。我对该主题进行了一些研究,并通过交叉检查不同的信息,发现能够编写polyfills.ts文件,根据以下情况,该文件对我来说是非常正确的:
Angular App Empty Page in IE but works in Chrome
https://blog.angularindepth.com/angular-and-internet-explorer-5e59bb6fb4e9
IE11 empty page using Angular 7
https://angular.io/guide/browser-support#suggested-polyfills
因此,我的polyfills.ts文件如下所示:
import 'core-js/es6/symbol';
import 'core-js/es6/object';
import 'core-js/es6/function';
import 'core-js/es6/parse-int';
import 'core-js/es6/parse-float';
import 'core-js/es6/number';
import 'core-js/es6/math';
import 'core-js/es6/string';
import 'core-js/es6/date';
import 'core-js/es6/array';
import 'core-js/es6/regexp';
import 'core-js/es6/map';
import 'core-js/es6/weak-map';
import 'core-js/es6/set';
import 'classlist.js';
import 'core-js/es6/reflect';
import 'core-js/es7/reflect';
import 'core-js/es7/array';
import 'web-animations-js';
import 'zone.js/dist/zone';
/* for web components */
import '@webcomponents/custom-elements/src/native-shim';
import '@webcomponents/custom-elements/custom-elements.min';
我希望Internet Explorer可以显示我的内容,但是...不。
在添加polyfills之前,我有一个空白页。在我有一个空白页之后,但是这次控制台中的错误不是错误:
https://1drv.ms/f/s!ArJSYka9gM27oknTCiu7v0UohOFb
我也尝试过使用“ polyfills.io” API,但这并不是真正的结论。
我当然必须忘记配置中的某些内容,否则polyfill不能正常工作吗?无论如何,我暂时还停留在上面,希望你们中的一些可以帮助我。预先感谢您的反馈,祝您生活愉快。
答案 0 :(得分:1)
请检查您的tsconfig.json文件,并确保将目标设置为ES5而不是ES6。另外,请确保已在index.html文件中引用了shim.min.js。
关于shim.min.js,我也有相同的引用方式。