Files
lilishop-uniapp/pages/tabbar/home/template/tpl_hot_zone.vue
pikachu1995@126.com dc2bef455a refactor: 移动端升级 Vue3 + uView Plus
将 lilishop-uniapp 从 Vue2/uView 1.6 迁移到 Vue3/uview-plus,优先支持 H5/微商城与微信小程序;移除 vendored uview-ui,改用 npm 依赖、Vuex4 与迁移脚本/补丁,并补充 VUE3_MIGRATION.md 回归清单。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 18:50:38 +08:00

56 lines
1.1 KiB
Vue

<template>
<div class="layout">
<div class="flex-one hot-image">
<image class="hot-image-main" mode="widthFix" :src="res.list[0].img" alt=""></image>
<image
v-for="(area, index) in res.list[0].zoneInfo"
:key="index"
@click="modelNavigateTo(area)"
mode="widthFix"
class="hot-area"
:style="{
left: area.leftPer * 100 + '%',
top: area.topPer * 100 + '%',
width: area.widthPer * 100 + '%',
height: area.heightPer * 100 + '%',
}"
:src="area.img"
alt=""
></image>
</div>
</div>
</template>
<script>
import { modelNavigateTo } from "./tpl";
export default {
title: "热区模块",
data() {
return {
modelNavigateTo,
};
},
props: ["res"],
};
</script>
<style lang="scss" scoped>
@import "./tpl.scss";
.hot-image {
position: relative;
}
.hot-area {
position: absolute;
z-index: 99;
}
.flex-one {
width: 100%;
display: block;
overflow: hidden;
}
.hot-image-main {
width: 100%;
min-height: 200rpx;
}
</style>