收藏
回答

wx.navigateTo跳转一个页面返回的问题

问题: 一个页面,只是展示的数据不一致,例如:详情页现在展示的是数据A,点击数据A中的列表跳转到详情页数据B,在点击左上角的返回按钮时候,却仍然显示的是详情页B的数据,需求就是点击返回后,展示的是跳转详情页B数据之前的详情页数据A



如果有人知道,希望能指点一下,谢谢大佬们

最后一次编辑于  2018-10-10  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

3 个回答

  • 懒得起名
    懒得起名
    02-26

    导致原因:

        页面 A、与页面 B 共享同一个 Page 实例导致的


    目前尝试过两种不是很好的解决办法:

    第一种:    修改 `Data` 数据结构,用商品的 `goodsId` 值作为 key,如下


    ```

    data = {


        goodsData: {


            [goodsId_A]: '',


            [goodsId_B]: '',


        // ...


      }


    }

    ```

    第二种: 从页面参数中取goodsId,在onshow中做更新

    ```

    onShow() {


        const currentPages = getCurrentPages() || [] // eslint-disable-line


        const { options } = currentPages[currentPages.length - 1] || {}


        let { goodsId = ''} = options


        this.goodsId = goodsId


        this.$apply()


    }

    ```


    02-26
    赞同 2
    回复
  • Mango
    Mango
    2018-10-11

    个人觉得设计不合理:

    1. 分两个页面

    2. 用 wx.redirectTo() 在添加一个悬浮按钮返回首页

    2018-10-11
    赞同
    回复 5
    • 「妃」
      「妃」
      2018-10-11

      设计是合理的,就像商品详情页的推荐商品跳转到商品详情页一样,只不过是参数不一样,我们展示的是不同的商品罢了

      2018-10-11
      回复
    • Mango
      Mango
      2018-10-11

      本页面 => 本页面  (还合理么)

      2018-10-11
      回复
    • Mango
      Mango
      2018-10-11

      如果真有这样的需求,也是好解决的

      2018-10-11
      回复
    • 「妃」
      「妃」
      2018-10-12

      使用mpvue有问题,返回的时候。现在已经解决了

      2018-10-12
      回复
    • 靜小靜
      靜小靜
      08-22回复「妃」
      请问一下你们是怎么解决的,遇到这个问题了,现在是强刷页面感觉体验不好。。。
      08-22
      回复
  • 未来可期。
    未来可期。
    2018-10-10

    既然使用了 wx.navigateTo,那么应该就是两个页面了  ,何来一个页面之说???


    2018-10-10
    赞同
    回复 4
    • 「妃」
      「妃」
      2018-10-10

      因为详情页用的是同一个页面承接的,不是两个页面,是不过是跳转的时候,数据发生了变化


      2018-10-10
      回复
    • 未来可期。
      未来可期。
      2018-10-10回复「妃」

      所以 你是 从 A ---->A   ,也就是 从A页面 ,使用wx.navigateTo  继续跳到A页面?

      2018-10-10
      回复
    • 「妃」
      「妃」
      2018-10-10

      你方便的话,我加你微信说,这样说不清楚


      2018-10-10
      回复
    • 未来可期。
      未来可期。
      2018-10-10回复「妃」

      晚点吧,  午休   QQ  778732665

      2018-10-10
      回复