收藏
回答

自定义tabbar如何更好的接近原生tabbar?

    第三方平台开发的小程序,由于原生tabbar只能够固定的配置,并且只支持本地图片,所以我们使用template引入的方式写的一个tabbar,需要的页面就去引入,页面跳转采用wx.redirectTo的方式跳转;

    问题如下

        使用原生的tabbar切换到其他页面后再切换回来,数据仍然存在,并且页面所处位置为之前的位置。自定义tabbar怎样能够模拟出这种效果

最后一次编辑于  2019-01-11
回答关注问题邀请回答
收藏

4 个回答

  • 卢霄霄
    卢霄霄
    2019-01-11

    同一个页面,tabbar上的几个页面其实是一个页面,用hidden的方式隐藏其他页面,只显示当前这一个。。每个页面其实是自定义组件

    2019-01-11
    赞同 3
    回复 7
    • 沉冰
      沉冰
      2019-01-11

      谢谢,是类似于选项卡切换那种吧,get到了,就是改动代价太大了;

      2019-01-11
      回复
    • 卢霄霄
      卢霄霄
      2019-01-11回复沉冰

      是有点。。。

      2019-01-11
      回复
    • 沉冰
      沉冰
      2019-01-11

      大佬,你们存数据比较多的时候是咋存的?用的storage还是app.global?

      2019-01-11
      回复
    • 卢霄霄
      卢霄霄
      2019-01-11回复沉冰

      并没有什么特别大的数据哎。。我还没遇见过。。除了图片视频,光是文本,数据都不太大。。毕竟纯文本的数据量不大

      2019-01-11
      回复
    • 🌪 🌪 🌪
      🌪 🌪 🌪
      2019-01-11回复卢霄霄

       卢哥 可以看看我新发的帖子不?关于在插件的源代码中捕捉异常的

      2019-01-11
      回复
    查看更多(2)
  • 管凯旋
    管凯旋
    2019-01-11

    经验分享的自定义tabBar方式我觉得挺好https://developers.weixin.qq.com/community/develop/doc/000c6e038c0ce05413f71e7ce56c04

    2019-01-11
    赞同 1
    回复 6
    • 沉冰
      沉冰
      2019-01-11

      看了一下他的代码,自定了一个tabbar,用的switchtab切换,图片能用网络图片;

      但是并不能动态配置tabbar的路径;只能够在现有的路径上进行操作;

      每次修改了tabbar上的路径还是必须要重新提交审核代码;


      2019-01-11
      回复
    • 管凯旋
      管凯旋
      2019-01-11回复沉冰

      是的,其他的自定义tabBar没看到效果比较好的呢

      2019-01-11
      回复
    • 沉冰
      沉冰
      2019-01-11回复管凯旋

      我们老板要求能随时修改tabbar的内容,所以这种方法也只能舍去了(o(╥﹏╥)o)

      2019-01-11
      回复
    • 抬头忘了谁
      抬头忘了谁
      2019-01-11

      也可以配置。后台配置选中图片和未选中图片以及文案,tabbar组件生命周期开始就请求接口拿到配置并渲染。 至于tabbar上的页面配置就有两种思路: 一是采用动态布局,设计一套布局规则,后台配置,请求后台获取对应tabbar页面的配置规则。 二是参数传h5的链接,采用web-view,但跳转入h5时,tabbar组件会被web-view组件完全遮挡(体验不好),还需配置webview安全域名。 仅供参考

      2019-01-11
      回复
    • 管凯旋
      管凯旋
      2019-01-11回复抬头忘了谁

      它这个组件初始还是需要配tabBar的,所以才能用switchTab,如果后台配置的页面不是特定的几个页面就没办法用这种方式跳转,效果也就没有这么好。。

      2019-01-11
      回复
    查看更多(1)
  • 瘦不到90斤不改名🤔
    瘦不到90斤不改名🤔
    2019-01-14

    可以用父子传值,想组件内部传值。

    页面中:<tabBar my-page='0'></tabBar>

    组件中用:

    properties: {

        myPage: {

          type: Number,

          value: 0

        }

      }

    组件页面中直接用变量即可


    2019-01-14
    赞同
    回复
  • 知足
    知足
    2019-01-14

    用redirectTo的话,页面的状态会被清除掉的。用navigateTo试试


    2019-01-14
    赞同
    回复
登录 后发表内容