Javascript 组合v1嵌套web组件
我不熟悉网络组件。由于v1网络组件可用,我从这里开始。我在网上读过很多关于他们的帖子。我特别感兴趣的是正确地撰写它们。我读过关于插槽的文章,并让它们工作,尽管我的努力并没有使插槽的网络组件按我预期的方式工作 如果我有这样的嵌套web组件,则嵌套/开槽webcomponent中的DOM不会插入父组件的槽中:Javascript 组合v1嵌套web组件,javascript,web-component,shadow-dom,custom-element,Javascript,Web Component,Shadow Dom,Custom Element,我不熟悉网络组件。由于v1网络组件可用,我从这里开始。我在网上读过很多关于他们的帖子。我特别感兴趣的是正确地撰写它们。我读过关于插槽的文章,并让它们工作,尽管我的努力并没有使插槽的网络组件按我预期的方式工作 如果我有这样的嵌套web组件,则嵌套/开槽webcomponent中的DOM不会插入父组件的槽中: 首先,您必须使用 然后调用attachShadow()将自动将新的阴影DOM分配给属性shadowRoot 您可以将HTML代码附加到影子DOM的innerHTML中,但我建议改用的内容属
首先,您必须使用
然后调用attachShadow()
将自动将新的阴影DOM分配给属性shadowRoot
您可以将HTML代码附加到影子DOM的innerHTML
中,但我建议改用
的内容
属性
那么筑巢是自然的:
customElements.define('parent component',类扩展了HtmleElement{
构造函数(){
超级()
this.attachShadow({mode:'open'})
this.shadowRoot.appendChild(parent1.content.cloneNode(true))
}
} )
define('child component',类扩展HtmleElement{
构造函数(){
超级()
var sh=this.attachShadow({mode:'open'})
sh.appendChild(child1.content.cloneNode(true))
}
})
你好
:主机{背景:浅蓝色;显示:内联块}
::开槽([slot=child]){background:lightyellow}
(家长)
开槽儿童:
:主机{显示:内联块}
::开槽(span){背景:粉红色}
(儿童)
嵌套插槽: