小程序基础能力~自定义 tabBar

自定义 tabBar

基础库 2.5.0 开始支持,低版本需做兼容处理

自定义 tabBar 可以让开发者更加灵活地设置 tabBar 样式,以满足更多个性化的场景。

在自定义 tabBar 模式下

  • 为了保证低版本兼容以及区分哪些页面是 tab 页,tabBar 的相关配置项需完整声明,但这些字段不会作用于自定义 tabBar 的渲染。
  • 此时需要开发者提供一个自定义组件来渲染 tabBar,所有 tabBar 的样式都由该自定义组件渲染。推荐用 fixed 在底部的 cover-view + cover-image 组件渲染样式,以保证 tabBar 层级相对较高。
  • 与 tabBar 样式相关的接口,如 wx.setTabBarItem 等将失效。
  • 每个 tab 页下的自定义 tabBar 组件实例是不同的,可通过自定义组件下的 getTabBar 接口,获取当前页面的自定义 tabBar 组件实例。

注意:如需实现 tab 选中态,要在当前页面下,通过 getTabBar 接口获取组件实例,并调用 setData 更新选中态。可参考底部的代码示例。

使用流程

1. 配置信息

  • 在 app.json 中的 tabBar 项指定 custom 字段,同时其余 tabBar 相关配置也补充完整。
  • 所有 tab 页的 json 里需声明 usingComponents 项,也可以在 app.json 全局开启。

示例:

{
  "tabBar": {
    "custom": true,
    "color": "#000000",
    "selectedColor": "#000000",
    "backgroundColor": "#000000",
    "list": [{
      "pagePath": "page/component/index",
      "text": "组件"
    }, {
      "pagePath": "page/API/index",
      "text": "接口"
    }]
  },
  "usingComponents": {}
}

2. 添加 tabBar 代码文件

在代码根目录下添加入口文件:

custom-tab-bar/index.js
custom-tab-bar/index.json
custom-tab-bar/index.wxml
custom-tab-bar/index.wxss

3. 编写 tabBar 代码

用自定义组件的方式编写即可,该自定义组件完全接管 tabBar 的渲染。另外,自定义组件新增 getTabBar 接口,可获取当前页面下的自定义 tabBar 组件实例。

.

原文地址:https://www.cnblogs.com/jianxian/p/11109282.html

时间: 2024-08-30 15:27:17

小程序基础能力~自定义 tabBar的相关文章

微信小程序如何实现自定义tabBar

小程序开发现在非常火,但是对于后台来说如何做到自定义tabBar呢?下面就来讲解下,如何实现微信小程序登录后根据用户身份权限不同跳转到不同的页面问题.首先需要解决的是:你要把底部导航做成一个公共模板template.wxml中代码:<template name="tabBar"> <view class="tab-bar" style="color: {{tabBar.color}}; background: {{tarBar.backg

小程序基础能力~文件系统

文件系统 文件系统是小程序提供的一套以小程序和用户维度隔离的存储以及一套相应的管理接口.通过 wx.getFileSystemManager() 可以获取到全局唯一的文件系统管理器,所有文件系统的管理操作通过 FileSystemManager 来调用. var fs = wx.getFileSystemManager() 文件主要分为两大类: 代码包文件:代码包文件指的是在项目目录中添加的文件. 本地文件:通过调用接口本地产生,或通过网络下载下来,存储到本地的文件. 其中本地文件又分为三种:

大牛带您微信小程序基础

前言什么是微信小程序,它是一种轻量级的APP,它与常规App来说,无需下载安装即可使用,它嵌于微信App中,要使用微信小程序你只需要搜索一下微信小程序的名称就好,如近期的"Google的画图"小程序等,小程序不同于APP一点的是,小程序成本低,前期宣传,可以靠扫描二维码,分享群,朋友圈等,来提高微信小程序的使用.无需安装即可下载的特点,也深受广大群众的喜欢.介绍小程序是一种用完即走的那么一种模式,从开始的B2C模式,人与商品,到P2P模式,人与人,在到C2P模式,人与服务.小程序就是那

关于小程序基础库

基础库 基础库与客户端之间的关系 小程序的能力需要微信客户端来支撑,每一个基础库都只能在对应的客户端版本上运行,高版本的基础库无法兼容低版本的微信客户端. 关于基础库的兼容方法,可以查看「兼容处理」章节. 基础库更新时机 为了避免新版本的基础库给线上小程序带来未知的影响,微信客户端都是携带 上一个稳定版 的基础库发布的. 在新版本客户端发布后,再通过后台灰度新版本基础库,灰度时长一般为 12 小时,在灰度结束后,用户设备上才会有新版本的基础库. 官方API地址 : linkhttps://dev

.NET教程:微信小程序基础入门

.NET教程:微信小程序基础入门 准备 Demo 项目地址 (https://github.com/zce/weapp-demo) Clone or Download(需准备GIT环境) $ cd path/to/project/root $ git clone https://github.com/zce/weapp-demo.git project-name --depth 1 $ cd project-name 没有git环境,可以直接下载 (https://github.com/zce/

小程序基础

一.准备 开发小程序的第一步,你需要拥有一个小程序帐号,通过这个帐号你就可以管理你的小程序. 小程序的 AppID 相当于小程序平台的一个身份证. 开发工具的使用 界面:模拟器(iphone6标准).编辑器.调试器: 编译:普通编译.添加编译模式(调试某个页面). 详情(选择开发版本.是否验证合法域名) 二.代码构成 最简单的小程序 ├── app.js ├── app.json ├── app.wxss ├── pages │ │── index │ │ ├── index.wxml │ │

简述 18.8.18 现有的微信小程序API能力

小程序能力竟恐怖如斯---- // 用于简述API能力 var obj = { 网络: ["发起请求", "上传/下载", "WebSocket"], 媒体: 媒体: { 图片: [ "从本地相册选择图片或使用相机拍照", "预览图片", "获取图片信息,倘若为网络图片,需先配置download域名才能生效", "保存图片到系统相册", // 需要用户授权 ], 录音

微信小程序基础语法总结

本文介绍微信小程序语法 配置文件 app.json的配置(全局) { // 用来配置页面的路径 "pages":[ "pages/index/index", // 首页 "pages/Test/Test" // 跳转的页面 ], "window":{ "enablePullDownRefresh": true, // 是否支持下拉刷新 "backgroundTextStyle":&quo

小程序基础介绍

1.app.json 小程序的全局配置,包括了小程序的所有页面路径.界面表现.网络超时时间.底部 tab 等 @1.pages字段 —— 用于描述当前小程序所有页面路径,这是为了让微信客户端知道当前你的小程序页面定义在哪个目录.必填 @2.window字段 —— 定义小程序所有页面的顶部背景颜色,文字颜色定义等. @3.tabBar底部tab栏表现 object @4.networkTimeout 网络超时时间 object @5.debug 是否开启debug boolean @6.funct