首页效果以及实现步骤
① 新建项目并梳理项目结构
"pages": [
"pages/home/home",
"pages/message/message",
"pages/contact/contact"
],
效果:
② 配置导航栏效果
"window": {
"backgroundTextStyle": "light",
"navigationBarBackgroundColor": "#2b4b6b",
"navigationBarTitleText": "本地生活",
"navigationBarTextStyle": "white"
},
③ 配置 tabBar 效果
素材:
素材放入里面:
效果:
"tabBar": {
"list": [
{
"pagePath": "pages/home/home",
"text": "首页",
"iconPath": "/images/tabs/home.png",
"selectedIconPath": "/images/tabs/home-active.png"
},
{
"pagePath": "pages/message/message",
"text": "消息",
"iconPath": "/images/tabs/message.png",
"selectedIconPath": "/images/tabs/message-active.png"
},
{
"pagePath": "pages/contact/contact",
"text": "联系我们",
"iconPath": "/images/tabs/contact.png",
"selectedIconPath": "/images/tabs/contact-active.png"
}
]
},
④ 实现轮播图 九宫格效果
效果:
获取轮播图数据列表的接口 【GET】https://www.escook.cn/slides
获取九宫格数据列表的接口 【GET】https://www.escook.cn/categories
接口配置教程: 【微信小程序】页面配置,网络数据请求_热爱编程的小白白的博客-CSDN博客
WXML:
<!--pages/home/home.wxml--> <!-- 轮播图区域 --> <swiper indicator-dots circular> <swiper-item wx:for="{{swiperList}}" wx:key="id"> <image src="{{item.image}}"></image> </swiper-item> </swiper> <!-- 九宫格区域 --> <view class="grid-list"> <view class="grid-item" wx:for="{{gridList}}" wx:key="id"> <image src="{{item.icon}}"></image> <text>{{item.name}}</text> </view> </view> <!-- 图片区域 --> <view class="img-box"> <image src="/images/link-01.png" mode="widthFix"></image> <image src="/images/link-02.png" mode="widthFix"></image> </view>
JS:
// pages/home/home.js Page({ /** * 页面的初始数据 */ data: { // 存放轮播图数据的列表 swiperList: [], // 存放九宫格数据的列表 gridList: [] }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { this.getSwiperList() this.getGridList() }, // 获取轮播图数据的方法 getSwiperList() { wx.request({ url: 'https://www.escook.cn/slides', method: 'GET', success: (res) => { this.setData({ swiperList: res.data }) } }) }, // 获取九宫格数据的方法 getGridList() { wx.request({ url: 'https://www.escook.cn/categories', method: 'GET', success: (res) => { this.setData({ gridList: res.data }) } }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: function () { }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { } })
WXSS:
/* pages/home/home.wxss */ swiper { height: 350rpx; } swiper image { width: 100%; height: 100%; } .grid-list { display: flex; flex-wrap: wrap; border-left: 1rpx solid #efefef; border-top: 1rpx solid #efefef; } .grid-item { width: 33.33%; height: 200rpx; display: flex; flex-direction: column; align-items: center; justify-content: center; border-right: 1rpx solid #efefef; border-bottom: 1rpx solid #efefef; box-sizing: border-box; } .grid-item image { width: 60rpx; height: 60rpx; } .grid-item text { font-size: 24rpx; margin-top: 10rpx; } .img-box { display: flex; padding: 20rpx 10rpx; justify-content: space-around; } .img-box image { width: 45%; }