html - Angular 之间有什么关系和 ShadowDOM
问题描述
<ng-content>
在比较使用HTML 的 ShadowDOM ( ShadowDOM Visualizer ) 的Angular Content Projection时,我发现了一个细微的差别。
在上面提到的链接页面中,当我删除in标记select
的属性时,所有其他内容都附加到 header 组件。<content>
<header>
在 Angular 中,只收集没有选择器的元素并将其附加到通配符<ng-content></ng-content>
在查看上面的链接时,我在技术上感到怀旧。于是,这个问题出现在了我的脑海中。
注意:我从 Google Developer's Web Fundamentals on Shadow DOM 重定向到该链接。
解决方案
谢谢你的问题!
我认为默认情况下Angular和ShadowDOM之间没有关系。如果您使用默认ViewEncapsulation.Emulated
设置的angular 将模拟 ShadowDOM。您可以使用 启用它,但只能在支持此功能的浏览器中启用。ViewEncapsulation.Native
您可以使用 DevTools检查此示例。你会发现这些奇怪_ngcontent-pmu-c51
的属性。这是 angular 模拟 ShadowDOM 的方式。
我希望我找到了你问题的答案。我期待着您的反馈。
您可以在此处找到更多信息:
更新:
<ng-content>
我们在 Angular和 ShadowDOM之间没有任何关系。也许,他们有一些相似的概念,但这是最大的。
推荐阅读
- javascript - 每次使用 jQuery 调用随机定时函数时,如何调用函数?
- racket - 怎么设置!函数中对象的值?
- c# - 根据特定条件在请求正文中反序列化接口 asp.net core
- ruby-on-rails - 获取多态关联以通过验证
- python - 带有 s、d、b、c、o、x、X、n 等的 Python 索引......它们是什么?
- discord - 如何标记机器人的所有者
- elasticsearch - 仅对高于原点的匹配使用衰减函数
- c# - 如何从另一个类访问表单控件
- django - django.db.utils.IntegrityError:NOT NULL 约束失败:blog_article.created_on
- javascript - 为什么源映射包含“名称”?