imageBox.vue 1.48 KB
<template>
	<div class="index-image-box" v-if="imageBoxs && imageBoxs.length == 9">
		<div class="box">
			<div class="top-box">
				<div class="item" :class="{'center': index == 1}" v-if="index >= 0 && index <= 2" v-for="(item, index) in imageBoxs" :key="index">
					<div class="a-link" @click="toDetail(item)">
						<img v-lazy="item.simg" class="img" mode="heightFix" />
					</div>
				</div>
			</div>
			<div class="center-box">
				<div class="item" v-if="index >= 3 && index <= 4" v-for="(item, index) in imageBoxs" :key="index">
					<div class="a-link" @click="toDetail(item)">
						<img v-lazy="item.simg" class="img" mode="widthFix" />
					</div>
				</div>
			</div>
			<div class="bottom-box">
				<div class="item" v-if="index >= 5 && index <= 8" v-for="(item, index) in imageBoxs" :key="index">
					<div class="a-link" @click="toDetail(item)">
						<img v-lazy="item.simg" class="img" mode="heightFix" />
					</div>
				</div>
			</div>
		</div>
	</div>
</template>

<script>
	export default {
		data() {
			return {
				
			}
		},
		props: ["imageBoxs", "funcs"],
		methods: {
			
			/**
			 * 跳转详情页
			 * @param {object} goods [商品详情对象]
			 */
			toDetail(goods) {
				if (typeof this.funcs === "object" && typeof this.funcs.toDetail === "function") {
					this.funcs.toDetail(goods);
				}
			}
		}
	}
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style rel="stylesheet/less" lang="less" scoped>
    @import './image_box';
</style>