Vue-2.8插槽

插槽分为默认插槽(组件内定制一处结构)、具名插槽(组件内定制多处结构)

作用域插槽不属于以上,只是插槽的一个传参语法

默认插槽

作用:让组件内部的一些结构支持自定义

需求:要在页面中显示一个对话框,封装成一个组件

问题:组件的内容部分,不希望写死,希望能使用的时候自定义。

插槽基本语法:

1.组件内需要定制的结构部分,改用<slot></slot>占位

2.使用组件时,<MyDialog></MyDialog>标签内部,传入结构替换slot

后备内容(默认值)

通过插槽完成了内容的定制,传什么显示什么,但是如果不传,则是空白

插槽后备内容:封装组件时,可以为预留的'<slot>'插槽提供后备内容(默认内容)。

语法:在<slot>标签内,放置内容,作为默认显示内容

效果:外部使用组件时,不传东西,则slot会显示后备内容;传东西,则后备内容被替代。

具名插槽

一旦插槽起了名字,就是具名插槽,只支持定向分发

需求:一个组件内有多处结构,需要外部传入标签,进行定制

默认插槽:一个的定制位置

语法:

3.v-slot:插槽名可以简化为#插槽名

作用域插槽

定义slot插槽的同时是可以传值的。给插槽上可以绑定数据,将来使用组件时可以用。

场景:封装表格组件

1.父传子,动态渲染表格内容

相关推荐
We་ct11 分钟前
LeetCode 4. 寻找两个正序数组的中位数:二分优化思路详解
前端·数据结构·算法·leetcode·typescript·二分
H@Z*rTE|i14 分钟前
vue首屏加载优化
前端·javascript·vue.js
FreeBuf_15 分钟前
新型开源供应链攻击:虚假 npm 安装日志暗藏 RAT 木马
前端·npm·开源
Irene199117 分钟前
v-model 的本质,defineModel() 是 Vue 3.4 的重大改进
前端·javascript·html5
西西学代码34 分钟前
Flutter---构造函数
开发语言·javascript·flutter
invicinble42 分钟前
关于对vue的认识
javascript·vue.js·ecmascript
EF@蛐蛐堂44 分钟前
【vue】Vite 生态 5 个 “新玩具“
前端·javascript·vue.js
风之舞_yjf1 小时前
Vue基础(29)_props配置项、ref属性
前端·vue.js
Fairy要carry1 小时前
项目03-手搓Agent之团队协作(发消息/分配任务)
linux·前端·python
hzb666661 小时前
xd_day32-day40
java·javascript·学习·安全·web安全·tomcat·php