8***@qq.com
8***@qq.com
  • 发布:2017-09-12 10:26
  • 更新:2020-03-30 03:55
  • 阅读:1535

webview选项卡,从其他页面返回选项卡时进入指定选项(暂时不完美解决)

分类:MUI

额,遇到一个问题,调了半天,不知道该怎么办了,求大神指教 ̄ω ̄=

项目做的是一个点餐的模块,用webview选项卡分了四个页面

想实现的功能:点完菜后,提交订单会进入单独的webview,然后点击返回会返回到当日订单选项卡中。

目前我是这样解决的:在选项卡的主页面写一个函数,这个函数模拟点击“当日订单”按钮。当提交订单时,在提交订单的页面用evalJS调用这个函数,这样当返回到选项卡页面后就会显示的是当日订单的选项了。

这个设计在IOS和安卓4.X都可以,但是在安卓5~6就有问题了:

进入选项卡之后显示的是点餐选项,是不加载“当日订单”页面的,如果我就这样点菜,提交(在提交订单页面调用选项卡页面的函数加载当日订单页面),然后返回,虽然选项卡定位到了“当日订单”,而且通过chrome调试可以看到“当日订单”的webview也确实加载好了,但是程序中并不显示这个webview

而如果进入选项卡后手动滑到“当日订单”使其加载出来,然后再返回到点菜页面进行点菜,提交,返回操作,就显示正常。

请问有人知道这是什么原因么?非常感谢!


目前是这么解决的:
重写mui.back 在返回的时候再调用模拟点击的函数

但是这样返回会先看到以下点菜页面,然后滑到订单列表页面,不是很完美。希望谁有更好的方法可以告知一下

2017-09-12 10:26 负责人:无 分享
已邀请:
lam

lam

那就试一下预加载。

  • 8***@qq.com (作者)

    感谢回复~~,试过预加载了,在main页面用preloadPages预加载了“今日订单”页面,然后发现模拟点击后,又创建出了一个今日订单的页面,也就是没有之前预加载的页面,还是不行。 刚才又摸索了一会儿,问题解决了。

    2017-09-12 11:10

  • lam

    预加载后,点了就只是show,不用去重新创建丫。

    2017-09-12 11:16

  • 8***@qq.com (作者)

    回复 lam:是呀,本来我也以为是这样的,但是mui的选项卡组件并没有show我预加载的订单页面,而是又创建了一个,用chrome可以看到有两个订单页面,我也不知道为什么,不知道是不是我代码的问题,有空再研究研究

    2017-09-12 11:53

  • lam

    真机调试吧。

    2017-09-12 13:33

chinahappybeer

chinahappybeer - china happy beer

mark

该问题目前已经被锁定, 无法添加新回复