收藏
回答

如何在app.js判断当前显示的是哪个页面?

A页面tabbar页面

B页面二级页面

我在app.js写了一个showModal,两个页面都有可能弹出来

所以需要在app.js来获取当前在哪个页面

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

2 个回答

  • chh
    chh
    2021-04-19

    1.给showModel方法传递个参数不就行了,在a页面用的时候传a,b页面用的时候传b。

    2.也可以给app.globalData加个currentPage值,每次进入页面的时候保存当前页面,在调用app.showModel的时候取到到currentPage,再写相应的逻辑

    3.一般工具类还是不推荐写在app.js中,我的习惯app.js尽量保持整洁。

    2021-04-19
    有用 2
    回复 1
    • 哄哄
      哄哄
      2021-04-19
      明白,我试一下,第二种方法
      2021-04-19
      回复
  • 寸许月光
    寸许月光
    2021-04-19

    有个获取页面路径的api getCurrentPages 好像是这个,记不清了,你搜下文档

    2021-04-19
    有用 1
    回复 7
    • 哄哄
      哄哄
      2021-04-19
      用过了,当我从A去B,再从B返回A,获取到的还是两个路由,我没有办法判断当前在哪个页面
      2021-04-19
      回复
    • 耿霄
      耿霄
      2021-04-19回复哄哄
      getCurrentPages 返回的是路由栈,栈顶就是当前页面
      2021-04-19
      回复
    • 哄哄
      哄哄
      2021-04-20回复耿霄
      试过了,并不会改变,A页面始终是数组的第一项,B页面始终是第二项。 这个是按加载顺序加入的。
      2021-04-20
      回复
    • 耿霄
      耿霄
      2021-04-20回复哄哄
      是的,是按加载的顺序
      2021-04-20
      回复
    • 寸许月光
      寸许月光
      2021-04-20回复哄哄
      那换个思路吧,你把这个弹窗当做一个组件去抽离,需要,使用的页面引入这个就好啦,app.js 应该有个onLunch的声明周期,只会触发一次的吧?实在不行就需要弹的页面引入了?使用 app.js 的async去调用生命周期方法试试?
      2021-04-20
      回复
    查看更多(2)
登录 后发表内容