首页热卖推荐商品显示axios异步请求数据动态渲染实现
•
人工智能
flex-wrap属性:
默认情况下,项目都排在一条线(又称“轴线”)上。flex- wrap属性定义,如果一条轴线 排不下,如何换行?
flex-wrap:wrap 该样式用于设置 换行。
.product_name{
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
<swiper-item
wx:for="{{swiperList}}"
wx:for-item="swiper"
wx:key="id"
>
<image mode="widthFix" src="{{'http://localhost:8080/image/swiper/'+swiper.swiperPic}}">
<navigator
wx:for="{{bigTypeList_row1}}"
wx:for-item="bigType"
wx:key="id">
<image mode="widthFix" src="{{baseUrl+'/image/bigType/'+bigType.image}}">
<navigator
wx:for="{{bigTypeList_row2}}"
wx:for-item="bigType"
wx:key="id">
<image mode="widthFix" src="{{baseUrl+'/image/bigType/'+bigType.image}}">
热卖推荐
<view class="product_detail"
wx:for="{{hotProductList}}"
wx:for-item="hotProduct"
wx:key="id"
>
<image mode="widthFix" src="{{baseUrl+'/image/product/'+hotProduct.proPic}}">
{{hotProduct.name}}
¥{{hotProduct.price}}
.index_swiper{
swiper{
width: 750rpx;
height: 375rpx;
swiper-item{
image{
width: 100%;
}
}
}
}
.index_bigType{
padding-top: 20rpx;
background-color: #F7F7F7;
.bigTypeRow{
display: flex;
navigator{
flex:1;
image{
width: 150rpx;
}
}
}
}
.index_hotProduct{
.product_title{
font-size: 32rpx;
font-weight: 600;
padding: 20rpx;
color: var(--themeColor);
background-color: #E0E0E0;
}
.product_list{
display: flex;
flex-wrap: wrap;
.product_detail{
margin: 15rpx;
width: 46%;
text-align: center;
navigator{
image{
width: 100%;
background-color: #F5F5F5;
}
.product_name{
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.product_price{
color: var(--themeColor);
}
button{}
}
}
}
}
import { requestUtil,getBaseUrl } from "../../utils/requestUtil"
Page({
/**
* 页面的初始数据
*/
data: {
//轮播图数组
swiperList:[],
baseUrl:'',
bigTypeList:[],
bigTypeList_row1:[],
bigTypeList_row2:[],
hotProductList:[]
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
const baseUrl = getBaseUrl();
this.setData({
baseUrl
})
this.getSwiperList();
this.getBigTypeList();
this.getHotProductList();
},
async getSwiperList(){
const result=await requestUtil({
url:'/product/findSwiper',
method:"GET"
});
this.setData({
swiperList:result.message
})
},
async getBigTypeList(){
const result = await requestUtil({
url:'/bigType/findAll',
method:"GET"
});
console.log(result)
const bigTypeList=result.message
const bigTypeList_row1=bigTypeList.filter((item,index)=>{
return index{
return index>=5;
})
this.setData({
bigTypeList,
bigTypeList_row1,
bigTypeList_row2
})
},
/**
* 获取热卖商品
*/
async getHotProductList(){
const result=await requestUtil({
url:'/product/findHot',
method:"GET"
});
this.setData({
hotProductList: result.message
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})
本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://www.net2asp.com/786b5c5fc3.html
