uni-app--微信小程序自定义tabbar

uni-app–微信小程序自定义tabbar

  微信官方小程序自定义tabbar

1.添加 tabBar 代码文件

  1) 从官网下载案例,如下:
在这里插入图片描述
  2) 接着把custom-tab-bar整个文件拷贝到你的项目下:
在这里插入图片描述
  3) 修改custom-tab-bar/index.js的文件,路径都改为自己uni-app项目下的页面路径和图片路径

Component({
 data: {
   selected: 0,
   color: "#7A7E83",
   selectedColor: "#3cc51f",
   list: [{
     pagePath: "/pages/index/index",
     selectedIconPath: "/static/tabs/home-active.png",
     iconPath: "/static/tabs/home.png",
     text: "首页"
   }, {
     pagePath: "/pages/message/message",
     selectedIconPath: "/static/tabs/message-active.png",
     iconPath: "/static/tabs/message.png",
     text: "消息"
   }
   , {
     pagePath: "/pages/news/news",
     selectedIconPath: "/static/tabs/contact-active.png",
     iconPath: "/static/tabs/contact.png",
     text: "联系"
   }
 ]
 },
 attached() {
 },
 methods: {
   switchTab(e) {
     const data = e.currentTarget.dataset
     const url = data.path
     wx.switchTab({url})
     this.setData({
       selected: data.index
     })
   }
 }
})

  4) 修改pages.json文件tabbar配置:主要就是"custom": true这一项

	// #ifdef MP-WEIXIN
	"tabBar": {
		"custom": true,
		"color": "#007aff",
		"selectedColor": "#ff0000",
		"backgroundColor": "#FFFFFF",
		"borderStyle":"black",
	  "list":[
	  		{
	  			"text":"首页",
	  			"pagePath":"pages/index/index",
	  			"iconPath":"static/tabs/home.png",
	  			"selectedIconPath":"static/tabs/home-active.png"
	  		},
	  		{
	  			"text":"消息",
	  			"pagePath":"pages/message/message",
	  			"iconPath":"static/tabs/message.png",
	  		    "selectedIconPath":"static/tabs/message-active.png"
	  		},
	  		{
	  			"text":"新闻",
	  			"pagePath":"pages/news/news",
	  			"iconPath":"static/tabs/contact.png",
	  			"selectedIconPath":"static/tabs/contact-active.png"
	  		}
	  ]
	},
	// #endif
2. 在main.js写入
// #ifdef MP-WEIXIN
Vue.mixin({
    methods:{
        setTabBarIndex(index) {
            if (typeof this.$mp.page.getTabBar === 'function' &&
            this.$mp.page.getTabBar()) {
                this.$mp.page.getTabBar().setData({
                    selected: index
                })
            }
        }
    }
})
// #endif
3. 在页面中调用setTabBarIndex方法

  调用这个方法,主要是解决abbar图标切换 要点击tabbar两次才能有选中状态的问题
  联系页面

	onShow()  {
			  // #ifdef MP-WEIXIN
				this.setTabBarIndex(2);
				// #endif
		 }

  消息页面

	onShow()  {
			  // #ifdef MP-WEIXIN
				this.setTabBarIndex(1);
				// #endif
		 }

  首页

	onShow()  {
			  // #ifdef MP-WEIXIN
				this.setTabBarIndex(0);
				// #endif
		 }
  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
uni-app中实现微信小程序的一键登录功能,需要使用button组件的open-type开放能力。在button标签中设置open-type为"getUserInfo",并通过@getuserinfo事件来触发wxLogin方法。具体代码如下: <button type="default" open-type="getUserInfo" @getuserinfo="wxLogin">一键登录微信小程序</button> 在App.vue文件中,可以配置小程序的全局样式、生命周期函数等。manifest.json文件用于配置应用名称、appid、logo、版本等打包信息。pages.json文件用于配置页面路径、页面窗口样式tabBar、navigationBar等页面类信息。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [uni-app实现微信小程序一键登录](https://blog.csdn.net/qq_45797421/article/details/118339987)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [uni-app实现购物商城的微信小程序,优秀毕业设计源代码,小白必看!](https://download.csdn.net/download/qq_42257666/87667930)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值