我想在插槽上没有内容时显示文本。
class List extends LitElement {
public render() {
return slot.length === 0
? html`No content is available`
: html`<slot></slot>`;
}
}
我想在插槽上没有内容时显示文本。
class List extends LitElement {
public render() {
return slot.length === 0
? html`No content is available`
: html`<slot></slot>`;
}
}
我认为这可能会有所帮助:
render() {
return html` <slot id="slot">No content is available</slot>
`;}
firstUpdated(){
const slot = this.shadowRoot.querySelector("#slot");
this.slt = slot.assignedNodes();
if (this.slt.length===0){
console.log('No content is available')
} else {
console.log('Content available', this.slt)
}
}
除非您渲染插槽元素,否则您无法分配插槽的节点。这就是为什么首先你需要渲染它。之后有很多方法可以隐藏它。另一种方法是在它的父母处检测它并将插槽元素的 nr 作为属性传递。