使用开发工具:HBuilderX

在<template> ... </template>之间写入以下代码:
<!-- 热装楼盘 -->
<view class="index-hot">
<hmy-index-part-title partTitle="热装楼盘" partDesc="累计研发2000+户型解析"></hmy-index-part-title>
<view class="index-hot-items">
<view class="container">
<view class="item" v-for="(item,index) in buildingItems" :key="index" @click="getBuildingDetail(item,index)">
<view class="thumb-img">
<!-- <image :src="item.images[0]" mode="aspectFill"></image> -->
<!-- <u-lazy-load :image="item.images[0]" height="340" img-mode='aspectFill' threshold="500"></u-lazy-load> -->
<u-image :src="item.images[0]" height="340" mode="aspectFill"></u-image>
</view>
<view class="item-con">
<view class="item-con-title">
<text class="c-line-clamp c-line-clamp1">{{item.title}}</text>
</view>
<view class="item-con-rt">
<view class="item-con-rt-icon thumb-img">
<image src="@/static/images/icon-shuazi.png" mode="aspectFit"></image>
</view>
<view class="item-con-rt-text">服务:{{item.reserve}}户</view>
</view>
</view>
</view>
</view>
</view>
<view class="index-more-box">
<view class="container">
<navigator url="/pages/building/index" hover-class="none">
<view class="more-btn">查看更多</view>
</navigator>
</view>
</view>
</view>在<script> 。。。 </script>加入以下代码:
export default {
data() {
return {
// 热装楼盘
buildingItems:[]
}
},
onLoad() {
this.getBuildings()
},
methods: {
// 热装楼盘
getBuildings(){
this.$api.building.getList({
limit:4
}).then((res)=>{
this.buildingItems = res.data.data
})
},
// 热装楼盘详情
getBuildingDetail(e,index){
const params = {
_id:e.id,
title:e.title,
images:e.images,
click:e.click,
cases_number:e.cases_number,
construction:e.construction,
reserve:e.reserve,
signing:e.signing
}
// console.log(params);
uni.navigateTo({
url:'/pages/building/detail?params='+JSON.stringify(params)
})
}
}
}在<style>。。。</style>之间加上以下代码:
// 热装楼盘
.index-hot{
width: 100%;
.index-hot-items{
width: 100%;
padding: 40rpx 0 0;
.container{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
.item{
width: 340rpx;
padding: 0 0 20rpx;
.thumb-img{
width: 100%;
height: 340rpx;
}
.item-con{
border-bottom: 1rpx solid #dcdfe6;
display: flex;
justify-content: space-between;
align-content: center;
line-height: 30rpx;
padding: 11rpx 0 16rpx;
.item-con-title{
width: 160rpx;
text{
color: #14181a;
font-size: 28rpx;
font-family: $base-font-fmaily;
}
}
.item-con-rt{
display: flex;
.item-con-rt-icon{
width: 22rpx;
height: 20rpx;
}
.item-con-rt-text{
color: #5f5f6b;
font-size: 22rpx;
font-family: $base-font-fmaily;
margin-left: 6rpx;
}
}
}
}
}
}
}









