UniApp组件开发七日通-间隔槽(gap)

171 阅读1分钟

首先看模板部分,组件是一个简单的view元素,类名为gap,样式由gapStyle计算属性动态生成。

<view class="gap" :style="gapStyle"></view>

script部分使用TypeScript,setup语法糖,定义了props和计算属性。props有size和color两个属性,分别控制高度和背景颜色。计算属性gapStyle根据props生成相应的样式对象。

    type types = {
		size ?: string | number,
		color ?: string,
	}
	// prop
	const prop = defineProps<types>()
    // computed
	const gapStyle = computed(() => {
        let obj={}
		if(prop.size){
			obj['height']=`${prop.size}px`
		}
		if(prop.color){
			obj['background']=prop.color
		}
		return obj
	})

接下来是样式部分,使用SCSS,设置了.gap的显示为flex,默认高度10px,作用域限定为scoped。

.gap {
    display: flex;
    height: 10px;
}

根据当前组件代码,我为您生成以下组件文档:

h-gap 间隔槽组件

功能说明

底部占位元素,用于在页面中创建指定高度的间隔区域。

属性说明

属性名类型默认值可选值说明
sizestring--间隔槽高度(像素)
colorstring--间隔区域背景颜色

使用示例

<template>
  <view>
    <!-- 基础用法 -->
    <h-gap size="20" />
    
    <!-- 带背景色 -->
    <h-gap :size="30" color="#f5f5f5" />
  </view>
</template>

样式说明

  • 默认高度:10px(当不传size参数时生效)

  • 显示方式:flex布局

  • 背景颜色:默认透明(可通过color参数设置)