mirror of
https://github.com/likeshop-github/likeshop.git
synced 2025-09-26 06:34:52 +08:00
121 lines
3.5 KiB
Vue
121 lines
3.5 KiB
Vue
// +----------------------------------------------------------------------
|
||
// | likeshop开源商城系统
|
||
// +----------------------------------------------------------------------
|
||
// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
|
||
// | gitee下载:https://gitee.com/likeshop_gitee
|
||
// | github下载:https://github.com/likeshop-github
|
||
// | 访问官网:https://www.likeshop.cn
|
||
// | 访问社区:https://home.likeshop.cn
|
||
// | 访问手册:http://doc.likeshop.cn
|
||
// | 微信公众号:likeshop技术社区
|
||
// | likeshop系列产品在gitee、github等公开渠道开源版本可免费商用,未经许可不能去除前后端官方版权标识
|
||
// | likeshop系列产品收费版本务必购买商业授权,购买去版权授权后,方可去除前后端官方版权标识
|
||
// | 禁止对系统程序代码以任何目的,任何形式的再发布
|
||
// | likeshop团队版权所有并拥有最终解释权
|
||
// +----------------------------------------------------------------------
|
||
// | author: likeshop.cn.team
|
||
// +----------------------------------------------------------------------
|
||
|
||
<template>
|
||
<view :class="'active-area ' + type">
|
||
<view class="a-header">
|
||
<slot name="header"></slot>
|
||
</view>
|
||
<view class="public-class a-main">
|
||
<slot name="main-header"></slot>
|
||
<view v-if="type == 'hot'">
|
||
<goods-list type="home-hot" :list="lists"></goods-list>
|
||
</view>
|
||
<scroll-view v-else style="white-space: nowrap;" scroll-x="true" scroll-with-animation="true">
|
||
<navigator v-for="(item, index) in lists" :key="index"
|
||
:style="{background: type == 'seckill' && '#f8f8f8'}" class="goods-item bg-white" hover-class="none"
|
||
:url="'/pages/goods_details/goods_details?id=' + item.id">
|
||
<custom-image width="240rpx" height="240rpx" radius="10rpx" lazy-load :src="item.image">
|
||
</custom-image>
|
||
<view style="padding: 8rpx">
|
||
<view class="goods-name line1">{{item.name}}</view>
|
||
<view class="row wrap">
|
||
<price-format class="mr10" :weight="500" :price="item.seckill_price || item.price" :first-size="32"
|
||
:second-size="22" :subscript-size="22" color="#FF2C3C"></price-format>
|
||
<price-format :price="item.min_price || item.market_price" color="#999999" :second-size="22"
|
||
:first-size="22" :subscript-size="22" :line-through="true"></price-format>
|
||
</view>
|
||
</view>
|
||
</navigator>
|
||
</scroll-view>
|
||
</view>
|
||
</view>
|
||
</template>
|
||
|
||
<script>
|
||
import {
|
||
trottle,
|
||
getRect
|
||
} from "@/utils/tools";
|
||
|
||
export default {
|
||
data() {
|
||
return {
|
||
currentSwiper: 0,
|
||
};
|
||
},
|
||
|
||
components: {},
|
||
props: {
|
||
type: {
|
||
type: String,
|
||
default: ''
|
||
},
|
||
lists: {
|
||
type: Array,
|
||
default: () => []
|
||
}
|
||
},
|
||
watch: {
|
||
"lists": function(value) {
|
||
if (!value) {
|
||
return;
|
||
}
|
||
}
|
||
},
|
||
|
||
beforeMount: function() {
|
||
|
||
},
|
||
destroyed: function() {},
|
||
methods: {}
|
||
};
|
||
</script>
|
||
<style lang="scss" scoped>
|
||
.active-area {
|
||
background-repeat: no-repeat;
|
||
background-size: 100% auto;
|
||
border-radius: 10rpx;
|
||
padding-bottom: 20rpx;
|
||
&.seckill {
|
||
background-color: $-color-white;
|
||
background-image: url(../../static/images/home_seckill_bg.png);
|
||
}
|
||
|
||
.a-main {
|
||
position: relative;
|
||
box-sizing: border-box;
|
||
|
||
.goods-item {
|
||
width: 240rpx;
|
||
margin-left: 16rpx;
|
||
display: inline-block;
|
||
border-radius: 10rpx;
|
||
overflow: hidden;
|
||
|
||
&:first-of-type {
|
||
margin-left: 20rpx;
|
||
}
|
||
|
||
&:last-of-type {
|
||
margin-right: 20rpx;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
</style>
|