- 默认插槽
没有给插槽定义name属性的插槽为默认插槽 - 具名插槽
带name值的插槽为,具名插槽 - 案例演示
- APP.vue
<template> <SlotTest> <!-- 具名插槽 --> <h3 slot="name1">{{title}}</h3> <!-- 默认插槽 --> <slot>1111</slot> </SlotTest> </template> <script> import SlotTest from './components/SlotTest.vue' export default { name: "App", data(){ return{ title:"标题" } }, components:{ SlotTest } }; </script> <style scoped> </style>
- SlotTest.vue
<template> <div> <slot name="name1">SlotTest组件标题</slot> <slot name="name2">SlotTest组件标题</slot> <slot>222</slot> </div> </template> <script> export default { name: "SlotTest", }; </script> <style scoped> </style>
- APP.vue
- 插槽作用域
- App.vue
<template> <!-- 作用域插槽 --> <SlotTest :todos="todos"> <!-- scope:是一个对象,对象上有todo,index顺序 v-slot指定slot回传过来的所有属性和数据 v-slot 是新语法 slot-scope 是老语法 --> <template v-slot="scope"> <span>父组件上回传的~~{{scope.todo}}~~{{scope.index}}</span> </template> </SlotTest> </template> <script> import SlotTest from './components/SlotTest.vue' export default { name: "App", data(){ return{ todos:[ {id:1,name:"张三1",bool:true}, {id:2,name:"张三2",bool:false}, {id:3,name:"张三3",bool:false} ] } }, components:{ SlotTest } }; </script> <style scoped> </style>
- SlotTest.vue
<template> <ul> <li v-for="(todo,index) in todos" :key="todo.id"> <span :style="{color:todo.bool?'red':'blue'}">子组件上~~{{todo.id}}~{{todo.name}}~~{{todo.bool}}</span> <!-- slot标签上的所有属性都会自动传递给父组件 --> <slot :todo="todo" :index="index"></slot> </li> </ul> </template> <script> export default { name: "SlotTest", props:{ todos:Array } }; </script> <style scoped> </style>
- App.vue
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
2020-07-13 访问tomcat服务器的时候常见的错误
2020-07-13 addresss already in use,JVM_BIND:8080
2020-07-13 JSP的九大内置对象
2020-07-13 jsp中的java脚本