评论

解决wx.setNavigationBarTitle 动态设置页面标题bug

解决 wx.setNavigationBarTitle 动态设置页面标题bug

var pages = getCurrentPages() //获取加载的页面

      var currentPage = pages[pages.length - 1] //获取当前页面的对象

        if (currentPage.route == '需要动态设置页面标题的页面路径') {

            wx.setNavigationBarTitle({

                title: 页面标题,

            })

        }


注:解决 wx.setNavigationBarTitle 动态设置页面标题bug,俩个页面 a页面、b页面,b页面中使用 wx.setNavigationBarTitle 动态设置页面标题, 由a -> b 然后在 b页面 加载完成之前快速返回(b -> a) 80%以上的情况会出现 b页面中的 wx.setNavigationBarTitle 动态设置标题设置给了 a页面。

最后一次编辑于  2020-09-02  
点赞 3
收藏
评论

2 个评论

  • 微品智
    微品智
    2020-09-03

    其实不少类似函数都有这样的问题,估计官方在设计的时候没有考虑到页面快速切换的问题。最好在页面load的时候,就保存一下当前的route,后面的一些行为,都要判断一下当前的route是否等于之前保存的,不等于,就忽略。最好可以阻止后面更多的行为。

    2020-09-03
    赞同 1
    回复
  • 理想
    理想
    2021-07-31

    if (currentPage.route == '需要动态设置页面标题的页面路径') {

    这里路径怎么写,我写如下的不起作用

    if (currentPage.route == '../my/my') {
    
    2021-07-31
    赞同
    回复 1
    • 理想
      理想
      2021-07-31
      写pages/my/my生效了:if (currentPage.route == 'pages/my/my') {
      2021-07-31
      回复
登录 后发表内容