默认插槽是未被具名插槽匹配的内容的唯一接收通道,非兜底机制;不写name属性即为默认插槽,仅允许一个,父组件无slot属性或slot值不匹配的节点均进入其中。

没写 name 属性的 就是默认插槽,但它不是“fallback”或“兜底”,而是有明确分发规则的独立通道——内容只要没被具名插槽收走,就全进这里。
没写 name 的 就是默认插槽
浏览器不关心你叫它“默认”还是“匿名”,只看有没有 name 属性。只要没写 name,这个 就自动成为默认插槽。它和具名插槽是并列关系,不是降级选项。
- 一个组件里只能有一个无
name的;写多个会被忽略(只有第一个生效) - 父组件中没带
slot属性的子节点,全部进入这个插槽 - 父组件写了
slot="xxx"但子组件没声明,这些节点也进默认插槽 - 如果组件里一个
都没写,所有传入内容直接丢弃,DOM 中不可见
name="" 和不写 name 效果一样吗
不一样。 是合法 HTML,但它的 name 是空字符串,只会匹配 slot="" 的节点——而现实中几乎没人这么写。不写 name 才是真正的默认插槽行为。
-
→ 接收所有未被具名插槽捕获的内容 -
→ 只接收这种极少见的写法,其他内容全丢弃(除非还有别的)- 调试时可以用
slotElement.assignedNodes()看返回是否为空,确认内容是否真的进来了默认插槽里写默认内容会怎样
可以写,默认内容只在插槽“空着”时显示。但要注意:只要父组件传了任何节点(哪怕
),默认内容就会被完全替换,不会叠加。
htmlppt.skill下载把任意文章或文档内容转换成精美的全屏翻页 HTML 演示文件(幻灯片风格)。当用户发来一篇文章、文档链接、Markdown 内容、或粘贴的文本,并且希望生成演示用的 HTML 时触发。支持任意内容来源:iWiki 链接、KM 链接、本地文件路径、直接粘贴的文本。生成的 HTML 文件保存到本地工作区,并通过企微直接发送给用户。触发词示例:帮我把这篇文章做成PPT、转成演示文档、生成HTML幻灯片、做个演示、转成可以演示的格式、article to deck、make a slide。
-
→ 父组件不传内容时显示“这里是默认正文”这里是默认正文 - 父组件写了
→ “Hello” 替换掉整段默认文字,不保留也不拼接Hello
- 想实现“有内容则显示内容,没内容才显示默认文案”,就得靠 JS 判断
assignedNodes().length === 0再控制显隐
常见踩坑点:大小写、动态绑定、多 slot 冲突
默认插槽本身不涉及
name,但容易被具名插槽的错误写法连累——比如大小写不一致导致内容全进了默认插槽,你以为它“兜底”了,其实只是匹配失败。- 父组件写了
,子组件却是→ 内容进默认插槽,不是“智能修正” - 试图用
或→ 解析后name就是字面量字符串,不是变量值 - 写了两个无
name的→ 后面那个无效,内容不会分流,全进第一个
真正关键的是:默认插槽不是“容错机制”,它是分发链的最后一环。内容进没进来,取决于前面具名插槽是否严格匹配——而不是它自己有多“智能”。
- 调试时可以用
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










