【小程序从0到1】首页布局案例的实现

这篇具有很好参考价值的文章主要介绍了【小程序从0到1】首页布局案例的实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

欢迎来到我的博客
📔博主是一名大学在读本科生,主要学习方向是前端。
🍭目前已经更新了【Vue】、【React–从基础到实战】、【TypeScript】等等系列专栏
🛠目前正在学习的是🔥 R e a c t / 小程序 React/小程序 React/小程序🔥,中间穿插了一些基础知识的回顾
🌈博客主页👉codeMak1r.小新的博客

本文被专栏【小程序|原力计划】收录

🕹坚持创作✏️,一起学习📖,码出未来👨🏻‍💻!
小程序首页布局,小程序|原力计划,小程序,javascript,前端,微信小程序

上篇文章详细讲解了微信小程序的网络数据请求,这篇文章将带领大家学习的是小程序的「首页布局案例」

首页效果以及实现步骤

  • 新建项目并梳理项目结构
  • 配置导航栏效果
  • 配置tabBar效果
  • 实现轮播图效果
  • 实现九宫格效果
  • 实现图片布局

新建项目并梳理项目结构

小程序首页布局,小程序|原力计划,小程序,javascript,前端,微信小程序

  • 新建项目并梳理项目结构

app.json

{
  "pages": [
    "pages/home/home",
    "pages/message/message",
    "pages/contact/contact"
  ],
  "window": {
    "backgroundTextStyle": "light",
    "navigationBarBackgroundColor": "#2b4b6b",
    "navigationBarTitleText": "本地生活",
    "navigationBarTextStyle": "white"
  },
  "style": "v2",
  "sitemapLocation": "sitemap.json"
}

小程序首页布局,小程序|原力计划,小程序,javascript,前端,微信小程序

  • 配置导航栏效果

配置tabBar效果

app.json中与pages、window平级的地方新增tabBar节点,节点内容如下:

app.json / 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"
      }
    ]
  },

效果如下:

小程序首页布局,小程序|原力计划,小程序,javascript,前端,微信小程序

  • 配置tabBar效果

实现轮播图效果

接口地址

获取轮播图数据列表的接口

  • 【GET】https://www.escook.cn/slides

home.js

// pages/home/home.js
Page({
  /**
   * 页面的初始数据
   */
  data: {
    // 存放轮播图数据的列表
    swiperList: []
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.getSwiperList()
  },

  // 获取轮播图数据
  getSwiperList() {
    wx.request({
      url: 'https://www.escook.cn/slides',
      method: 'GET',
      success: res => {
         this.setData({
          swiperList: res.data
        })
      }
    })
  }
})

小程序首页布局,小程序|原力计划,小程序,javascript,前端,微信小程序

home.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>

home.wxss

/* pages/home/home.wxss */
swiper {
	height: 350rpx;
}

swiper image {
	width: 100%;
	height: 100%;
}

小程序首页布局,小程序|原力计划,小程序,javascript,前端,微信小程序

  • 实现轮播图效果

实现九宫格效果

接口地址

获取九宫格数据列表的接口

  • 【GET】https://www.escook.cn/categories

home.js

  // 获取九宫格数据
  getGridList() {
    wx.request({
      url: 'https://www.escook.cn/categories',
      method: 'GET',
      success: res => {
        this.setData({
          gridList: res.data
        })
      }
    })
  }

home.wxml

<!-- 九宫格区域 -->
<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>

home.wxss

/* pages/home/home.wxss */
swiper {
	height: 350rpx;
}

swiper image {
	width: 100%;
	height: 100%;
}

.grid-list {
	display: flex;
	flex-wrap: wrap;
	border-top: 1rpx solid #efefef;
	border-left: 1rpx solid #efefef;
}

.grid-list .grid-item {
	width: 33.33%;
	height: 200rpx;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-bottom: 1rpx solid #efefef;
	border-right: 1rpx solid #efefef;
	box-sizing: border-box;
}

.grid-item image {
	width: 60rpx;
	height: 60rpx;
}

.grid-item text {
	margin-top: 10rpx;
	font-size: 24rpx;
}
  • 实现九宫格效果

小程序首页布局,小程序|原力计划,小程序,javascript,前端,微信小程序

实现图片布局

home.wxml

<!-- 图片区域 -->
<view class="img-box">
	<image src="/images/link-01.png" mode="widthFix"></image>
	<image src="/images/link-02.png" mode="widthFix"></image>
</view>

home.wxss

.img-box {
	display: flex;
	padding: 20rpx 5rpx;
	justify-content: space-around;
}

.img-box image {
	width: 45%;
}

小程序首页布局,小程序|原力计划,小程序,javascript,前端,微信小程序文章来源地址https://www.toymoban.com/news/detail-779116.html

  • 实现图片布局

到了这里,关于【小程序从0到1】首页布局案例的实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 小程序搭建OA项目首页布局界面

    首先让我们来学习以下Flex布局 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性 Flex是Flexible Box的缩写,意为”弹性布局”,用来为盒状模型提供最大的灵活性。 任何一个容器都可以指定为Flex布局。 display: ‘flex’ 容器默认存在两根轴:水平的主

    2024年02月08日
    浏览(42)
  • 微信小程序首页-----布局(详细教程赶快收藏吧)

                                                      🎬 艳艳耶✌️:个人主页                                                   🔥 个人专栏 :《Spring与Mybatis集成整合》《Vue.js使用》                                                   ⛺️ 越努力 ,越幸运

    2024年02月04日
    浏览(50)
  • 微信小程序首页、界面布局、功能简洁(示例三)

    直接上具体代码: 1、js代码 2、wxml代码 3、wxss代码 4、json代码 界面中包含的图片地址可自行修改。页面布局简洁,功能简单,没有写具体的监听事件,只是简单的将监听进行了绑定,如需要具体的监听功能事件,需要根据自己的需求进行修改呦,如需更多示例,进我主页呦

    2024年01月24日
    浏览(55)
  • 微信小程序首页、界面布局、自定义顶部(示例一)

    具体界面见下图: 如需界面中引用的图片文件和更多功能,请滑动至底部查看下载链接,可下载完整版,下载后直接使用微信开发者工具打开即可,完整版功能更详细呦。当前界面的布局样式代码如下(如存在不足之处,请根据具体需求,自行修改): 1、js代码: 2、wxml代

    2024年02月12日
    浏览(41)
  • 微信小程序首页、界面布局、3D轮播图效果(示例二)

    使用swiper实现3D轮播图效果,自定义顶部状态栏,具体代码: 1、js代码 2、wxml代码 3、wxss代码 4、json代码 如需要下载完整版,包含监听事件、图片文件等,请前往下方链接,下载完整版,下载后直接使用微信开发者工具打开即可,下载链接为: 小程序完整版界面(示例二)

    2024年02月10日
    浏览(55)
  • 微信小程序 —— 会议OA项目首页布局与Mock数据交互

    14天阅读挑战赛 如果世界上有奇迹,那一定是努力的另一个名字。 目录 一、小程序布局 1.1 Flex布局 1.2 Flex属性   二、OA会议首页搭建 2.1 首页底部菜单 2.2 创建后端结口 2.3 Mock模拟数据 2.4 首页轮播图搭建 2.5 首页内容搭建  布局的传统解决方案,基于盒状模型,依赖 dis

    2024年02月08日
    浏览(42)
  • 微信小程序进阶——Flex弹性布局&轮播图&会议OA项目(首页)

    目录 一、Flex弹性布局 1.1 什么是Flex弹性布局 1.1.1 详解 1.1.2 图解  1.1.3 代码演示效果 1.2 Flex弹性布局的核心概念 1.3 Flex 弹性布局的常见属性 1.4 Flex弹性布局部分属性详解 1.4.1 flex-direction属性 1.4.2 flex-wrap属性 1.4.3 flex-flow属性 1.4.4 justify-content属性 1.4.5 align-items属性 1.4.6 

    2024年02月05日
    浏览(41)
  • 微信小程序之会议OA系统首页布局搭建与Mock数据交互

    目录 前言 一、Flex 布局( 分类 编程技术) 1、Flex布局是什么? 2、基本概念 3、容器的属性 3.1 flex-direction属性 3.2 flex-wrap属性 3.3 flex-flow 3.4 justify-content属性 3.5 align-items属性 3.6 align-content属性 4、项目的属性 4.1 order属性 4.2 flex-grow属性 4.3 flex-shrink属性 4.4 flex-basis属性 4.5 fl

    2024年02月08日
    浏览(48)
  • flutter 使用Bloc+PageView+BottomNavigationBar实现传统首页布局

    本篇文章主要记录首页框架搭配bloc的使用示例,本篇文章将会使用上一篇文章中的代码,有兴趣的朋友可以去参考一下实现,除了使用pageview还有另外一种实现,但是最后发现那种方式有两个问题,一个是进入首页后会加载所有PageWidget,第二个是每次切换PageWidget时都会走一

    2024年02月15日
    浏览(83)
  • vue首页多模块布局(标题布局)

    2024年02月08日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包