uni-app插槽

什么是插槽?

在 UniApp 中,插槽(Slot)是一种允许父组件向子组件特定位置插入HTML内容的方式。这种方式使得组件更加灵活,可以被复用在多种场景下,同时让父组件能够控制子组件的部分呈现内容。

基本概念

  1. 默认插槽 :当没有特别指定插槽名称时,默认插槽就是指没有名字的插槽,可以在子组件中直接使用 <slot></slot> 标签来定义一个默认插槽的位置。

  2. 命名插槽 :如果需要在子组件中定义多个插槽,可以通过 <slot name="slotName"></slot> 来定义具有特定名称的插槽。父组件则需要使用 <template v-slot:slotName>...</template> 或者更简洁的 <template #slotName>...</template> 来填充这些具名插槽。

  3. 作用域插槽 :有时候父组件需要访问子组件的数据或属性,这时候就需要使用作用域插槽。子组件需要在 <slot> 标签中声明需要传递给父组件的数据,如 <slot name="slotName" :items="items"></slot>。父组件在使用这个插槽时,可以通过 v-slot:slotName="{ items }" 来接收这些数据,并根据这些数据进行渲染。


默认插槽

html 复制代码
<template>
	<view class="all">
		<view class="header">
			头部
		</view>
		<view class="main">
			<slot></slot>
		</view>
		<view class="footer">
			底部
		</view>
	</view>
</template>

<script setup>

</script>

<style lang="scss" scoped>
	.header {
		position: sticky;
		top: 0;
		background-color: green;
		height: 100px;
		z-index: 1; // 确保头部始终在最上层
	}

	.main {
		height: 100px;
	}


	.footer {
		background-color: rosybrown;
		height: 120px;
	}
</style>
相关推荐
阡陌昏晨10 分钟前
H5性能优化-打开效率提升了62%
前端·javascript·vue.js
鹏北海11 分钟前
TypeScript 类型工具与 NestJS Mapped Types
前端·后端·typescript
烟袅11 分钟前
一文搞懂 CSS 定位:relative、absolute、fixed、sticky
前端·css
孟祥_成都11 分钟前
你离前端动画高手只差这个秘籍!GSAP ScrollTrigger 动画完全指南!(第一章)
前端·动效
小小前端_我自坚强12 分钟前
React 18 新特性深度解析
前端·javascript·react.js
BBB努力学习程序设计13 分钟前
Canvas绘图基础:坐标、线条与圆形的艺术
前端·html
硬核子牙13 分钟前
ext4文件系统与jbd2
linux
小小前端_我自坚强14 分钟前
前端性能优化实战:打造极致用户体验
前端·性能优化
BBB努力学习程序设计15 分钟前
不只是设计师的工具:Photoshop在前端开发中的高频操作指南
前端·html
烟袅16 分钟前
Trae 推出 Solo 模式:AI 开发的“一人一项目”时代来了?
前端·人工智能·solo