-
Notifications
You must be signed in to change notification settings - Fork 6.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Router in wechat webview #26
Comments
@Huxpro 感谢关注,这个问题之前也留意到了,但是没有深究。昨天咨询iOS客户端同事屏幕边缘左滑返回的原理,是客户端监听webView:shouldStartLoadWithRequest:navigationType:事件,如果有触发该事件,就会做类似于 调试发现, 今天发现有人问相同的问题http://stackoverflow.com/questions/33210121/html5-pushstate-not-trigger-shouldstartloadwithrequest 😁 目前demo页面改成设置hash的方式,可以滑动返回 |
#26 修复`pushState`导致微信从左边缘向右滑动无法返回上一页,而是直接关闭WebView的bug
@progrape 非常感谢如此周到的解答! |
有个情况,和路由和幕边缘左滑返回 这两个操作相关: 背景:
情况:
使用webview Back来返回,则全部正常,不会像上面一样丢失first界面。 |
rooter.js 是微信实现的么?还是用的开源的? |
@lijijordan router.js 是我们为了呈现 demo 简单写的,源码单独存放在这里 https://github.com/progrape/router 。目前功能比较单一,仅满足我们的 demo 使用,生产环境推荐使用更专业的路由。 |
请问如果使用其他框架该出现这种情况该怎么去解决呢,我用的是Framework7,但微博、Safari不会出现这个问题,微信就会 |
#515 # @ @lijijordan |
我反复测试发现,连续打开3个窗口后,侧滑返回只能两次,在第3个窗口侧滑时看到的是第一个窗口的图像,侧滑完成后页面突然变成了第二个窗口,再次侧滑页面关闭了,应该是返回第一个窗口, |
从第3个窗口侧滑返回到第二个窗口时,再侧滑没有了,但是顶上返回键点击有效, |
Hey, nice work guys.
我注意到你们使用
history.pushState()
实现了简单的路由,我在微信 webview 中测试了一下,有一个问题有点奇怪:使用微信 webview 上方的 Back 和使用“屏幕边缘左滑返回” 的效果完全不一样当使用 Webview Back 时,所有的路由都很正常
但当通过屏幕边缘左滑返回时,路由好像失效了,直接退出了整个 webview。
我发现好像所有使用
pushState
实现路由的 web app 都有这个问题,但是使用原始的
locatin.hash
&hashchange
做路由的却没有这个问题……但是它们确实都给
history.length
+1 了……是微信 webview 做了什么处理吗?还是
pushState
的表现在 iOS WebView 上本来有有不同?(Safari 是没有这个问题的)The text was updated successfully, but these errors were encountered: