我有一个angular2应用程序在Chrome和Firefox中运行良好,但在Safari中我收到此错误:
TypeError el.createShadowRoot不是函数
在Edge中同样如此:
对象不支持BrowserDomAdapter.prototype.createShadowRoot中的属性或方法'createShadowRoot'(http:// localhost:5000/lib/angular2/bundles/angular2.dev.js:22893:7)
我缺少一些垫片或聚合物吗?
createShadowRoot()应该只在你使用时调用ViewEncapsulation.Native.
使用ViewEncapsulation.Emulated或确保填充polyfill(我无法指导你如何,因为我不使用TS工具链,只有Dart)
小智 7
我最近遇到了同样的问题,在 Firefox 上遇到了这个错误
el.createShadowRoot is not a function
从文档中,我了解到不推荐使用 createShawdowRoot,取而代之的是 attachShadow() https://developer.mozilla.org/en-US/docs/Web/API/Element/createShadowRoot
查看我的 Angular 项目中所有组件的封装,一个组件脱颖而出,并且使用了 ViewEncapsulation.Native ,它也被弃用,所以我按照建议将其替换为 ViewEncapsulation.ShadowDom,检查 https://angular.io/api /核心/组件#封装
这对我来说治愈了。
所以我认为 Native 封装编译为 Firefox 不再支持的 createShawdowRoot 。
| 归档时间: |
|
| 查看次数: |
3778 次 |
| 最近记录: |