在另一个 Web 组件中定义一个 Web 组件,而不会污染全局命名空间



>假设我想使用一个在内部使用 10 个 Web 组件的 Web 组件,如果该组件全局定义它,Internals 将污染我的全局组件命名空间,我不能将它们的名称用于其他组件。

有没有办法在另一个 Web 组件中使用 Web 组件而无需通过customElements.define()定义它?

有一些关于创建作用域自定义元素注册表的讨论,但没有规范或尚未实现。

范围自定义元素注册表尚不受支持,但您可以使用前缀名称直到支持它,例如,如果您的组件名称是x-foo您可以将组件命名为x-foo-titlex-foo-image等。 例如,在 JB 输入开发人员中使用子 Web 组件,如下所示:

<jb-input>
<jb-input-inbox-element slot="end-section">
<div>after</div>
</jb-input-inbox-element>
<jb-input-inbox-element slot="start-section">
<div>before</div>
</jb-input-inbox-element>
</jb-input>

最新更新