【VUE 具名插槽的应用】

具名插槽类似于提前将布局安排好,但内容为空,一旦有具体内容填充进来,可以很和谐的展示,不影响整体效果。🍇

"举个🌰:系统里大部分页面的查询条件是相同的,所以需要封装一个公用的查询条件组件

但是又有个别页面比原来的查询条件多几个,此时具名插槽就能很好解决这个问题"

一、具名插槽未填充内容时

子组(child)件代码如下:
组件里现在预定义了两个具名插槽

javascript 复制代码
<el-form :model="form" label-width="100px">
			<el-form-item label="姓名">
				 <el-input placeholder="请输入内容" v-model="form.name" clearable />
			</el-form-item>
			<el-form-item label="年纪">
				 <el-input placeholder="请输入内容" v-model="form.age" clearable />
			</el-form-item>
			<slot name="otherItem"></slot>
			<el-form-item>
				<el-button type="primary" icon="el-icon-search">查询</el-button>
				<slot name="otherButton"></slot>
			</el-form-item>
</el-form>

父组件代码如下:

简单的直接引用

javascript 复制代码
<child></chlid>

页面效果🍑:

二、给插槽填充内容

template 分别给两个具名插槽填充了内容

javascript 复制代码
<child>
	<template v-slot:otherItem>
		<el-form-item label="职业">
			 <el-input placeholder="请输入内容" v-model="form2.career" clearable />
		</el-form-item>
		<el-form-item label="住址">
			 <el-input placeholder="请输入内容" v-model="form2.address" clearable />
		</el-form-item>
	</template>
	<template v-slot:otherButton>
		<el-button type="primary" icon="el-icon-download">下载文件</el-button>
	</template>
</child>

此时页面效果 🧘‍♀️ :

相关推荐
Dxy12393102164 小时前
JS AES加密详解
开发语言·javascript·ecmascript
溪语流沙4 小时前
【每天一个CSS | Day41】开关三连:一套状态机,三种视觉翻译
前端·css·html5·每日一练·按钮
变与不变8064 小时前
css定位布局精讲
前端·css
FRing034 小时前
JavaScript入门到精通三十三(异常处理、call方法、apply方法、bind方法、防抖、节流)
开发语言·前端·javascript
计算机魔术师5 小时前
OpenAI 砍掉 100 亿融资目标,AI 资本市场的温度计变了
前端
jktantan6 小时前
(二)Vue 3 的 attrs 不是响应式:el-form 扩展属性同步的三种方案
前端·javascript·vue.js·element-plus
前端 贾公子6 小时前
第 5 章:Codex 从可运行程序到可交付工具
java·前端·数据库
用户360055579006 小时前
Kestrel_VLLM - 26 · 发射空档三步曲:事件计时 → nsys → 判别实验
前端
echome8886 小时前
JavaScript async/await 错误处理:别让 Promise 静默失败
开发语言·前端·javascript·promise
PedroQue997 小时前
v0.2.0 架构升级:class + reactive 重塑状态管理
前端·uni-app