微信小程序/uniapp动态修改tabBar信息及常见报错

目录

uni.setTabBarItem(options)

介绍:

wx.setTabBarItem是不支持修改url路径的,所以使用uniapp的API。

动态设置 tabBar 某一项的内容:uniapp官网

setTabBarItem 兼容性:

Web Android iOS
4.0 3.91 4.11

参数:

options里的具体参数:

名称 类型 必备 默认值 兼容性 描述
index number - - tabBar 的哪一项,从左边算起,索引从0开始
text string - - tab 上按钮文字
iconPath string - - 图片路径
selectedIconPath string - - 选中时的图片路径
pagePath string - - 页面绝对路径
iconfont SetTabBarItemIconFontOptions - - 字体图标,优先级高于 iconPath
visible boolean - - tab 是否显示
success (result: AsyncApiSuccessResult) => void - - 接口调用成功的回调函数
fail (result: SetTabBarFail) => void - - 接口调用失败的回调函数
complete (result: AsyncApiResult) => void - - 接口调用结束的回调函数(调用成功、失败都会执行)

iconfont 包含参数:

名称 类型 必备 默认值 兼容性 描述
text string - - 字库 Unicode 码
selectedText string - - 选中后字库 Unicode 码
fontSize string - - 字体图标字号(px)
color string - - 字体图标颜色
selectedColor string - - 字体图标选中颜色

示例:

javascript 复制代码
uni.setTabBarItem({
  index: 0,
  text: 'text',
  iconPath: '/path/to/iconPath',
  selectedIconPath: '/path/to/selectedIconPath',
  pagePath: '/path/newPagePath',
  success: ()=>{
    console.log('success');
  },
  fail: ()=>{
    console.log('success');
  },
  complete: ()=>{
    console.log('success');
  },
})

报错

使用时遇到了报错:"setTabBarItem:fail not TabBar page"

原因:setTabBarItem方法 只能在tabbar页面调用(有看到有人说在app中可以在非tabbar页面调用,但是我只是在微信小程序中使用,所以不清楚能不能用)

解决方法:在tabBar页面调用(没办法,微信小程序不支持)

相关推荐
Autumn_yun2 小时前
uniapp 实现项目多语言切换
uni-app
nodcloud2 小时前
点可云进销存商城如何部署在微信小程序
微信小程序·小程序
懒大王95274 小时前
uni-app + Vue3 + EZUIKit.js 播放视频流
开发语言·javascript·uni-app
懒大王95274 小时前
uni-app + Vue3 开发展示 echarts 图表
前端·uni-app·echarts
百思可瑞教育7 小时前
Vue 生命周期详解:从初始化到销毁的全过程剖析
前端·javascript·vue.js·前端框架·uni-app·北京百思可瑞教育·百思可瑞教育
jingling5559 小时前
uniapp | 快速上手ThorUI组件
前端·笔记·前端框架·uni-app
百思可瑞教育15 小时前
uni-app 根据用户不同身份显示不同的tabBar
vue.js·uni-app·北京百思可瑞教育·北京百思教育
项目題供诗18 小时前
微信小程序开发教程(八)
微信小程序·小程序
Q_Q19632884751 天前
python+springboot+uniapp微信小程序题库系统 在线答题 题目分类 错题本管理 学习记录查询系统
spring boot·python·django·uni-app·node.js·php
百思可瑞教育1 天前
使用UniApp实现一个AI对话页面
javascript·vue.js·人工智能·uni-app·xcode·北京百思可瑞教育·百思可瑞教育