2.1 KiB
2.1 KiB
BaseBackground 背景图片组件
一个可复用的背景图片组件,支持自定义背景图片源和样式。
功能特性
- 支持自定义背景图片源
- 支持自定义图片裁剪模式
- 支持自定义样式
- 默认使用 CommonEnum.BACKGROUND 作为背景
使用方法
基础用法
<template>
<view class="page">
<base-background />
<!-- 其他内容 -->
</view>
</template>
<script>
import BaseBackground from '@/components/base-background/base-background.vue'
export default {
components: {
BaseBackground
}
}
</script>
自定义背景图片
<template>
<view class="page">
<base-background :src="customBackground" />
<!-- 其他内容 -->
</view>
</template>
自定义裁剪模式
<template>
<view class="page">
<base-background mode="aspectFit" />
<!-- 其他内容 -->
</view>
</template>
自定义样式
<template>
<view class="page">
<base-background
:custom-style="{
borderRadius: '8rpx',
opacity: 0.8
}"
/>
<!-- 其他内容 -->
</view>
</template>
Props
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| src | String | '' | 背景图片源,如果不传则使用默认背景 |
| mode | String | 'aspectFill' | 图片裁剪模式 |
| customStyle | Object | {} | 自定义样式对象 |
裁剪模式说明
aspectFill: 保持纵横比缩放图片,只保证图片的短边能完全显示出来aspectFit: 保持纵横比缩放图片,使图片的长边能完全显示出来scaleToFill: 不保持纵横比缩放图片,使图片完全适应容器widthFix: 宽度不变,高度自动变化,保持原图宽高比不变heightFix: 高度不变,宽度自动变化,保持原图宽高比不变
注意事项
- 组件会自动设置
position: absolute和z-index: -1,确保背景图片在内容下方 - 默认样式包含
border-radius: 16rpx,可以通过customStyle覆盖 - 组件会自动导入
CommonEnum,使用默认背景图片