微信小程序项目实践之主页tab选项实现


Posted in Javascript onJuly 18, 2018

官方文档

效果图:

微信小程序项目实践之主页tab选项实现

实现底部Tab选项,只需要在项目根目录下的app.json下修改

如图:

 微信小程序项目实践之主页tab选项实现

先介绍一下app.json文件

默认有两个代码块:

1、pages

这里注册了当前小程序的所有页面路径

2、window

这里用于设置小程序的状态栏、导航条、标题、窗口背景色。

以上两个详细使用参考文档,本文章不做介绍

  我们看下app.json提供的另一个配置项:tabBar

微信小程序项目实践之主页tab选项实现

   tabBar提供一些公有的属性对tab配置:

微信小程序项目实践之主页tab选项实现

  而针对每一个单独的tab 也有一些属性进行配置:

微信小程序项目实践之主页tab选项实现

     官方示意图:

微信小程序项目实践之主页tab选项实现

 具体实现底部Tab功能:

 设定一个需求,假设当前我们有两个tab,一个'主页',一个'我的' , 未选中灰黑色,选择红色。

 一、在pages目录下创建两个目录,并创建想要的js、json、wxml、wxss相关文件

       名字随意,这里举例:home目录(主页Tab相关),mine目录(我的Tab相关)

微信小程序项目实践之主页tab选项实现

二、在根目录下新建一个目录,取名images(随意取),用于存放图片,这里tab需要使用

1、在阿里素材库下载几个,注意tab图片需要下载点击和未点击两种状态下的图片。

       2、讲图片资源复制到自己建的用于存图片的目录下   

微信小程序项目实践之主页tab选项实现

三、app.json文件配置

      1、在pages属性中配置项目所有的页面路径,我们这个例子就两个,home,mine

"pages":[
  "pages/home/home",
  "pages/mine/mine"
 ]

    2、添加tabBar 属性 , 定义一些状态

            根据文章前面部分讲解,进行一些必要属性的配置

"tabBar":{
  "color": "#333333",
  "selectedColor": "#ff0000",
  "backgroundColor": "#fff",
  "list":[
   {
    "pagePath":"pages/home/home",
    "text":"主页",
    "iconPath":"images/home.png",
    "selectedIconPath":"images/home_selected.png"
    
   },
   {
    "pagePath":"pages/mine/mine",
    "text":"我的",
    "iconPath": "images/mine.png",
    "selectedIconPath":"images/mine_selected.png"
   }
  ]
 }
{
 "pages":[
 "pages/home/home",
 "pages/mine/mine"
 ],
 "window":{
 "backgroundTextStyle":"light",
 "navigationBarBackgroundColor": "#fff",
 "navigationBarTitleText": "WeChat",
 "navigationBarTextStyle":"black"
 },
 "tabBar":{
 "color": "#333333",
 "selectedColor": "#ff0000",
 "backgroundColor": "#fff",
 "list":[
  {
  "pagePath":"pages/home/home",
  "text":"主页",
  "iconPath":"images/home.png",
  "selectedIconPath":"images/home_selected.png"
  },
  {
  "pagePath":"pages/mine/mine",
  "text":"我的",
  "iconPath": "images/mine.png",
  "selectedIconPath":"images/mine_selected.png"
  }
 ]
 }
}

四、单独页面的配置

一个页面包含js、hson、wxml、wxss等相关文件。

      这里不再多具体介绍,只添加一个小需求,点击tab切换相关页面,该页面标题要和tab一致,页面内容也和tab一致,用于说明tab效果正确实现。

      1、设置单独页面的页面标题,这个需求是在json文件中配置实现的。

 主需要在单独页面路径下的json文件中添加属性:

微信小程序项目实践之主页tab选项实现

 

官方文档

     2、在页面中显示与tab一致的文字

   页面内容搭建(ui绘制代码)是在单独页面路径下的wxml文件中配置实现的。

微信小程序项目实践之主页tab选项实现

官方文档

总结

以上所述是小编给大家介绍的微信小程序项目实践之主页tab选项实现,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript Event学习第十一章 按键的检测
Feb 10 Javascript
Underscore.js 1.3.3 中文注释翻译说明
Jun 25 Javascript
JavaScript获得指定对象大小的方法
Jul 01 Javascript
jQuery ui实现动感的圆角渐变网站导航菜单效果代码
Aug 26 Javascript
全面解析DOM操作和jQuery实现选项移动操作代码分享
Jun 07 Javascript
JS判断form内所有表单是否为空的简单实例
Sep 09 Javascript
AngularJS中isolate scope的用法分析
Nov 22 Javascript
浅谈js使用in和hasOwnProperty获取对象属性的区别
Apr 27 Javascript
vue之nextTick全面解析
May 17 Javascript
浅谈vue-router 路由传参的方法
Dec 27 Javascript
vue路由传参三种基本方式详解
Dec 09 Javascript
three.js利用射线Raycaster进行碰撞检测
Mar 12 Javascript
详解性能更优越的小程序图片懒加载方式
Jul 18 #Javascript
微信小程序项目实践之验证码倒计时功能
Jul 18 #Javascript
微信小程序日期选择器实例代码
Jul 18 #Javascript
JavaScript实现的反序列化json字符串操作示例
Jul 18 #Javascript
Angularjs实现多图片上传预览功能
Jul 18 #Javascript
JavaScript实现正则去除a标签并保留内容的方法【测试可用】
Jul 18 #Javascript
微信小程序scroll-x失效的完美解决方法
Jul 18 #Javascript
You might like
php两种无限分类方法实例
2015/04/21 PHP
PHP中的命名空间详细介绍
2015/07/02 PHP
php微信公众号开发之现金红包
2018/04/16 PHP
laravel 出现command not found问题的解决方案
2019/10/23 PHP
jquery 插件实现图片延迟加载效果代码
2010/02/06 Javascript
jquery的键盘事件修改代码
2011/02/24 Javascript
js异步加载的三种解决方案
2013/03/04 Javascript
node.js中的querystring.escape方法使用说明
2014/12/10 Javascript
jQuery使用$.get()方法从服务器文件载入数据实例
2015/03/25 Javascript
JavaScript识别网页关键字并进行描红的方法
2015/11/09 Javascript
浅析JavaScript中的变量复制、参数传递和作用域链
2016/01/13 Javascript
什么是JavaScript注入攻击?
2016/09/14 Javascript
JS路由跳转的简单实现代码
2017/09/21 Javascript
微信小程序wx.request实现后台数据交互功能分析
2017/11/25 Javascript
vue-cli脚手架搭建的项目去除eslint验证的方法
2018/09/29 Javascript
详解vue中localStorage的使用方法
2018/11/22 Javascript
Mint UI组件库CheckList使用及踩坑总结
2018/12/20 Javascript
JS实现前端动态分页码代码实例
2020/06/02 Javascript
你不知道的SpringBoot与Vue部署解决方案
2020/11/09 Javascript
[01:03:56]Mineski vs TNC 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
在Python中使用成员运算符的示例
2015/05/13 Python
Python Matplotlib库入门指南
2015/05/18 Python
Python MySQL数据库连接池组件pymysqlpool详解
2017/07/07 Python
Python在groupby分组后提取指定位置记录方法
2018/04/20 Python
Python numpy实现二维数组和一维数组拼接的方法
2018/06/05 Python
Python3操作MongoDB增册改查等方法详解
2020/02/10 Python
韩国女装NO.1网店:STYLENANDA
2016/09/16 全球购物
全球销量第一生发产品:Viviscal
2017/12/21 全球购物
Tomcat Mysql datasource数据源配置
2015/12/28 面试题
妇产医师自荐信
2014/01/29 职场文书
医学专业职业生涯规划范文
2014/02/05 职场文书
药店促销活动总结
2014/07/10 职场文书
副主任竞聘演讲稿
2014/08/18 职场文书
2014年乡镇人大工作总结
2014/11/25 职场文书
2015年中秋节主持词
2015/07/30 职场文书
详解PHP设计模式之依赖注入模式
2021/05/25 PHP