在我的Angular8项目中,我需要支持CustomElements和ShadowDom。在我的angular.json文件中的脚本部分,包被加载:
"scripts": [
"node_modules/@webcomponents/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js"
],在Edge中,一切正常,但Internet Explorer会抛出“错误错误:未捕获(在承诺中):错误:没有足够的堆栈空间。”根据this的问题,一些人有类似的错误,因为polyfills与webcomponentsjs捆绑包冲突。
我也删除了提到的多边形填充,但错误仍然存在。
这是我的多边形填充的完整列表:
import 'core-js/es/symbol';
import 'core-js/es/function';
import 'core-js/es/parse-int';
import 'core-js/es/parse-float';
import 'core-js/es/number';
import 'core-js/es/math';
import 'core-js/es/object';
import 'core-js/es/array';
import 'core-js/es/date';
import 'core-js/es/regexp';
import 'classlist.js';
import 'core-js/es/reflect';
import 'zone.js/dist/zone';
import 'regenerator-runtime/runtime.js';
import 'custom-event-polyfill';
import 'url-polyfill';
import 'css-vars-ponyfill';
import '@babel/polyfill';
import 'intersection-observer';我还尝试在中加载捆绑包或had组件had loader.js,并等待WebComponentsReady事件,但也没有效果。
发布于 2020-02-13 16:29:46
您还可以在GitHub中引用this thread。它提到了另一篇文章中的一个解决方案,它是在webcomponents-loader之前加载core-js的,你可以尝试一下:
<head>
<script src="//cdnjs.cloudflare.com/ajax/libs/core-js/2.5.7/core.min.js"></script>
<script src="./@webcomponents/webcomponentsjs/webcomponents-loader.js"></script>
</head>此外,作者还给出了如下his solution。webcomponents-loader使用的Symbol polyfill似乎会导致IE11中的堆栈溢出:
<script src="//cdn.polyfill.io/v2/polyfill.min.js"></script>
<script src="./@webcomponents/webcomponentsjs/webcomponents-loader.js"></script>https://stackoverflow.com/questions/60169983
复制相似问题