uniApp 设置动态tabs(不是自定义tab哈)

我写的不是自定义 tabs 是切换 tab 的图标等

这里可以切换页面绝对路径 必须在 pages 中先定义 被替换掉的 pagePath 不会变成普通页面 (仍然需要使用 uni.switchTab 跳转)

javascript 复制代码
const tabbarConfig = {
  'mk-dev': {
    home: {
      icon: 'static/tabs/mk/home.png',
      activeIcon: 'static/tabs/mk/homeActive.png'
    },
    order: {
      icon: 'static/tabs/mk/order.png',
      activeIcon: 'static/tabs/mk/orderActive.png'
    },
    user: {
      icon: 'static/tabs/mk/user.png',
      activeIcon: 'static/tabs/mk/userActive.png'
    }
  },
  'default': {
    home: {
      icon: 'static/tabs/zs/home.png',
      activeIcon: 'static/tabs/zs/homeActive.png'
    },
    order: {
      icon: 'static/tabs/zs/order.png',
      activeIcon: 'static/tabs/zs/orderActive.png'
    },
    user: {
      icon: 'static/tabs/zs/user.png',
      activeIcon: 'static/tabs/zs/userActive.png'
    }
  }
}

// 这里接收env环境 在app.vue中调用
export const getTabBarConfig = (env) => {
  return tabbarConfig[env] || tabbarConfig.default
}
javascript 复制代码
<script>
  import { getTabBarConfig } from '@/config/tabbar'

  export default {
    onLaunch: function () {
      const env = import.meta.env
      // ---------下面根据环境 切换tabBar图标
      const tabConfig = getTabBarConfig(env.MODE)
      // 动态设置 tabBar 图标
      // 写到这里的时候 记得看下我最开头标明的文字 谢谢
      uni.setTabBarItem({
        index: 0,
        iconPath: tabConfig.home.icon,
        selectedIconPath: tabConfig.home.activeIcon
      })
      uni.setTabBarItem({
        index: 1,
        iconPath: tabConfig.order.icon,
        selectedIconPath: tabConfig.order.activeIcon
      })
      uni.setTabBarItem({
        index: 2,
        iconPath: tabConfig.user.icon,
        selectedIconPath: tabConfig.user.activeIcon
      })
    },
    onShow: function () {
      console.log('App Show')
    },
    onHide: function () {
      console.log('App Hide')
    }
  }
</script>

<style lang="scss">
  /*每个页面公共css */
  @import 'nutui-uniapp/styles/index.scss';
</style>
相关推荐
不停喝水4 分钟前
【前端转全栈java速通课】 项目实战④-1 Spring Boot 创建项目-定义接口-请求参数处理-分层规范-依赖注入
java·前端·spring boot
2501_916007474 分钟前
苹果应用商店App Store上架费用标准及原因解析
android·ios·小程序·https·uni-app·iphone·webview
用户298698530146 分钟前
在 React 中使用 JavaScript 将 HTML 转换为 PDF
javascript·react.js·html
OpsEye13 分钟前
企业如何统一管理多家大模型 API?
javascript·ai编程
涛涛ing14 分钟前
当AI能写原生代码:Shopify用12周把React Native应用迁回了Swift和Kotlin
前端
JudithHuang23 分钟前
React 数据请求:TanStack Query
前端·react.js·前端框架
程序员-Benothing28 分钟前
Shell脚本入门教程:Shebang、变量、注释与执行方式
前端·chrome
java_nnnn33 分钟前
JavaEE进阶-JavaScript初识
开发语言·前端·javascript·java-ee·ecmascript
裕晟资质规划1 小时前
涉密场所物理隔离与技术防护体系:标准矩阵、审查校验点与常见缺陷分析
大数据·前端·网络·人工智能·经验分享
变与不变8061 小时前
JSON基础详解
前端·javascript