收藏
回答

skyline下tabbar标签页不能用自定义路由吗?

使用自定义路由或预设路由从A页面跳转到B页面,如果A页面是tabbar标签页就会跳转失败,如果A页面不是tabbar标签页就可以成功触发动画跳转,是tabbar就无法自定义路由还是哪里需要做别的配置

回答关注问题邀请回答
收藏

4 个回答

  • 微信小店技术专员-binnie
    微信小店技术专员-binnie
    2023-10-30

    skyline 暂时还不支持 tabbar 页的自定义路由,近期会更新上

    2023-10-30
    有用 2
    回复 6
    • zxx
      zxx
      发表于移动端
      2023-10-30
      了解,感谢~
      2023-10-30
      回复
    • 黄思程
      黄思程
      2023-11-02回复zxx
      目前用自定义 tabbar 就可以
      2023-11-02
      回复
    • 伏丹域扬
      伏丹域扬
      01-15回复黄思程
      能否贴个示例代码呢 tabbar页自定义路由这个需求量应该还不小
      01-15
      回复
    • zhouzhan
      zhouzhan
      08-27
      现在也遇到这个问题了,有进展吗
      08-27
      回复
    • zhouzhan
      zhouzhan
      08-27
      建议文档上注明这个问题,debug了好久。
      08-27
      回复
    查看更多(1)
  • 阿顺
    阿顺
    02-22

    近期更新上,是多久呢? 2024-2-22 号依旧无法自定义动画跳转。

    02-22
    有用
    回复
  • 钱立亮
    钱立亮
    02-03

    2024-02-03,skyline,如果A页面是tabbar页(非自定义),则跳转动画不行。需要自定义tabbar。

    02-03
    有用
    回复
  • CRMEB
    CRMEB
    2023-10-30

    这个问题可能是由于在tabbar页面中使用了自定义路由导致的。你可以尝试以下方法解决这个问题:


    1. 在tabbar页面的`App.vue`文件中,将`<router-view>`包裹在一个`<keep-alive>`标签中,这样可以保留tabbar页面的状态。修改后的代码如下:


    <template>
      <div id="app">
        <router-view v-if="$route.meta.keepAlive" keep-alive></router-view>
        <router-view v-if="!$route.meta.keepAlive"></router-view>
      </div>
    </template>
    


    2. 在需要使用自定义路由的页面的`meta`对象中添加`keepAlive: true`属性,表示该页面需要保留状态。例如:


    export default {
      name: 'YourPage',
      meta: {
        keepAlive: true, // 表示该页面需要保留状态
      },
    };
    


    3. 在跳转到B页面时,使用`router.push()`方法,并传入一个包含`path`和`params`的对象。例如:


    this.$router.push({ path: '/yourPath', params: { yourParam: 'yourValue' } });
    


    通过以上方法,你应该可以在tabbar页面中使用自定义路由成功跳转到B页面。如果仍然遇到问题,请检查你的项目配置和代码是否有其他错误。

    2023-10-30
    有用
    回复 1
    • 王富贵
      王富贵
      04-09
      瞎凑什么热闹。。。
      04-09
      回复
登录 后发表内容