liveh5-nuxt/app/components/x-image/index.vue
xingyy 2e08e6efcb feat(collect-code): 新增收款二维码功能
- 添加新的 API接口和相关组件
- 实现用户认证和艺术品列表展示- 新增个人资料填写页面- 优化首页和登录页面样式
2025-02-05 17:00:22 +08:00

57 lines
932 B
Vue

<script setup>
import { showImagePreview } from 'vant';
const props = defineProps({
src: {
type: String,
default: ''
},
preview: {
type: Boolean,
default: true
},
// 用于控制图片尺寸
sizes: {
type: Array,
default: () => [320, 640, 768, 1024]
},
// 用于控制图片格式
format: {
type: String,
default: 'webp'
},
// 用于控制图片质量
quality: {
type: Number,
default: 80
}
})
const showImage = () => {
if (props.preview) {
showImagePreview([props.src]);
}
}
</script>
<template>
<nuxt-img
loading="lazy"
v-bind="{ ...props, ...$attrs }"
style="object-fit: cover"
@click="showImage"
:src="src"
:modifiers="{ format: 'webp' }"
:sizes="sizes"
:format="format"
:quality="quality"
placeholder
/>
</template>
<style scoped>
:deep(img) {
width: 100%;
height: 100%;
}
</style>