2.2.6
https://gist.github.com/cherry-geqi/68b3b83491394851f94d8364ab099a83
完整的内容列表
没有内容的空白页面,直到您在页面上滑动
在 iOS Safari 上重现(在 iOS 10.3.1 上测试)。
即使它使用相同的引擎,也适用于 iOS 版 Chrome。
即使我无法重现,这显然是 Safari 的后退缓存的问题,而不是 Vue 本身的问题。
那我们应该关闭它吗?
@cherry-geqi 下次确保提供交互式复制和可编辑复制,比如 jsfiddle 🙂 它真的有帮助,甚至更多的移动问题
很抱歉,但我无法提供 jsfiddle 重现,因此可能需要更多步骤来重现。 要点是至少完整的要点。 要重现,请下载 gist,然后将其放在python3 -m http.server
等临时服务器的根目录下,然后从 iOS Safari 请求。
在我的设备中,它几乎是 100% 的回购。
这是一个截屏:
空白页repro.zip
这可能是 Safari 的问题,但我们应该提供一个解决方法,对吗?
我认为这实际上是因为……您每次导航到家时都在重新获取数据。 您应该使用存储来缓存获取的数据。
恐怕不是。 也许我没有说清楚,但这确实是一个致命的问题,只在 iOS Safari 上重现。 当我返回时,页面保持空白,直到与之交互。 加载数据并构建 DOM。 这更像是浏览器渲染错误,但我们可以做些什么吗?
无法使用您提供的确切代码在 iOS 10.3.1 上重现。
这是 100% 的再现。 滚动列表页面(重要!)并导航到详细信息页面并返回。 我至少已经为此工作了 20 个小时。
你的iOS版本?
iOS 10.3.1 以及微信 6.5.7,因为它从 6.5.6 开始切换到 WKWebview。
你应该提到 - Safari 不是 WKWebView。
在 iOS Safari 上重现。
是的。 对于我的应用程序,这个问题在 ios(至少是微信、Safari)上也可以 100% 重现。 Vue 2.3.3。
@Centaur你找到解决方法了吗?
@cherry-geqi 我在数据获取后添加了以下代码:
this.$nextTick(() => {
window.scrollTo(0, 1)
window.scrollTo(0, 0)
})
至少我们的测试团队很满意。
是的,你解决这个问题了吗? @cherry-geqi
@ppxialetsgo通过@Centaur只是作品所提供的解决方法。 这显然不是个案。 我建议 vuejs 团队对此多加注意。 @yyx990803 @posva
+1 完全一样的问题。
100% 转载于 iOS 9/10/11 + 微信(WKwebview)/safari。 无法在微信的UIWebview中重现。
上述解决方法对我们有用。
我们正在考虑将 Vue 用于我们的新项目,但该线程似乎与我所看到的非常相似。 我们的主要用户不会使用最新的手机,我看到示例 Vue 应用程序根本无法在 IOS (7.1.2) Safari => IPHONE-4 上呈现。
再生产:
这里的vue demo在IOS 7.1.2上不渲染
https://lucasleandro1204.github.io/vue-content-loading
但是等效的 React 组件可以:
https://danilowoz.github.io/react-content-loader/
请指教。
我也有同样的问题
我也有同样的问题。
我也有同样的问题。
这实际上是一个与 Safari 而不是 Vue 相关的问题,查看这个与 Vue 无关的演示。
伟大的! @javoski的演示表明该问题与 Vue 无关,而是与 Safari 相关。
@Hao-Wu @javoski ,我不同意你的 Safari 部分,我在我的 Ipod touch 中尝试使用谷歌浏览器,它也呈现相同
@javoski 。 它在网络检查器中说你有一个错误,如图所示
似乎“勾号”没有正确读取
嘿伙计们,我有同样的问题。但现在我解决了我的问题。
我发现我的问题是由于 dom 树的结构
就我而言,有两个嵌套的 HTML 元素。
我认为这是因为这会使帧渲染错误。
我不知道我是否遇到了完全相同的问题,但我遇到了一个与此非常接近的问题。 我的解决方案是安装babel-polyfill
。 因此,对于未来在谷歌上搜索这个问题的人来说,这可能是一个有帮助的选项。
感谢您的解决方法@Centaur !!!
你节省了我几个小时的调试时间...谢谢兄弟。
同样的问题发生在反应上,如果元素使用“-webkit-overflow-scrolling: touch”,在我的情况下它不会在返回时呈现。
那么,除了滚动方法之外,最后如何解决问题? 我也遇到了反应的问题...
@cherry-geqi @Centaur @posva
虽然这个问题解决了,但我还是想说,这不叫ios问题,而就是vue的问题,如果你非要说是ios问题,那如果出了安卓的问题,是不是也不是vue的问题?那还有谁来用vue?
you are five
该问题在 Safari iOS 12 上仍然存在。
@Centaur修复工作,你只需要找到主要的滚动元素。 就我而言,它是 body 元素中的一个 div。
虽然这个问题解决了,但我还是想说,这不叫ios问题,而就是vue的问题,如果你非要说是ios问题,那如果出了安卓的问题,是不是也不是vue的问题?那还有谁来用vue?
你五岁
你是sjb?
vue中可以使用
scrollBehavior (to, from, savedPosition) {
// return 期望滚动到哪个的位置
return {y: 0}
}
ios safari中的Vue,当右边滑回到home page
,页面会是空白的,然后显示上一页的内容,最后是home page
;
另外:不仅仅是回到home page
有这个问题,其他页面也存在这种现象;
放弃Vue Transition
,emmm太难了
最有用的评论
@cherry-geqi 我在数据获取后添加了以下代码:
至少我们的测试团队很满意。