HTMLSlotElement: assign() ã¡ã½ãã
Baseline
åºãå©ç¨å¯è½
ãã®æ©è½ã¯åºãå®è£ ããã¦ãããå¤ãã®ãã¼ã¸ã§ã³ã®ç«¯æ«ããã©ã¦ã¶ã¼ã§åä½ãã¾ãã2023å¹´3æä»¥éããã¹ã¦ã®ãã©ã¦ã¶ã¼ã§å©ç¨å¯è½ã§ãã
assign() 㯠HTMLSlotElement ã¤ã³ã¿ã¼ãã§ã¤ã¹ã®ã¡ã½ããã§ããã®ã¹ãããã®æåã§å²ãå½ã¦ããããã¼ããã¹ããããã¼ãã«ã®é åºä»ããªã¹ãã«è¨å®ãã¾ããæåã§å²ãå½ã¦ããããã¼ãã¯åæç¶æ
ã§ã¯ããã¼ãã« assign() ã使ç¨ãã¦å²ãå½ã¦ãããã¾ã§ç©ºã§ãã
ã¡ã¢:
æåã®ï¼å½ä»¤çãªï¼ã¹ãããã¨ååä»ãï¼å®£è¨çãèªåçãªï¼ã¹ãããã®å²ãå½ã¦ãæ··å¨ããããã¨ã¯ã§ãã¾ããããããã£ã¦ããã®ã¡ã½ãããåä½ãããã«ã¯ãã·ã£ãã¦ããªã¼ã使ããã®ã« slotAssignment: "manual" ãªãã·ã§ã³ã使ç¨ããå¿
è¦ãããã¾ãã
æ§æ
assign(node1)
assign(node1, node2)
assign(node1, node2, /* ⦠,*/ nodeN)
弿°
è¿å¤
ãªã (undefined)ã
ä¾å¤
NotAllowedErrorDOMException-: èªåçã«å²ãå½ã¦ãããã¹ãããã§ãã®ã¡ã½ãããå¼ã³åºãã¨çºçãã¾ãã
ä¾
以ä¸ã®ä¾ã§ã¯ãã¿ãåã¢ããªã±ã¼ã·ã§ã³ã§æ£ããã¿ãã表示ããããã« assign() ã¡ã½ããã使ç¨ãã¦ãã¾ãããã®é¢æ°ãå¼ã³åºããã表示ããããã«ã渡ããããããã¹ãããã«ä»£å
¥ããã¾ãã
function UpdateDisplayTab(elem, tabIdx) {
const shadow = elem.shadowRoot;
const slot = shadow.querySelector("slot");
const panels = elem.querySelectorAll("tab-panel");
if (panels.length && tabIdx && tabIdx <= panels.length) {
slot.assign(panels[tabIdx - 1]);
} else {
slot.assign();
}
}
仿§æ¸
| 仿§æ¸ |
|---|
| HTML > # dom-slot-assign > |