Ipad 3和Iphone 4s的速度不够快
AngularJS/Cordova/Phonegap Ipad 3 and Iphone 4s not fast enough?
我有一个AngularJS应用(angular v1.2.19),我使用Cordova/PhoneGap将其转换为iOS应用。
然而,似乎resolve
属性(见下文)正在考虑,但相关页面在承诺被解决之前显示,导致一些丑陋的闪烁。
在这种情况下闪烁是:表单只显示字段集和图例+按钮1秒,然后显示整个数据(输入等)。
$routeProvider
.when('/page/meetings/123/edit',
{
templateUrl: "edit.html",
controller: "EditCtrl"
resolve: {
activities: ['Activities', function (Activities) {
return Activities.getList().then(function(response) {
return response.data;
});
}]
}
}
}
)
//page is displayed before activities are fully loaded.
在Cordova中是否存在关于resolve
属性的已知bug ?或者我应该添加一个构型?
它在浏览器中工作得很好,但在iOS应用中,我没有设法让Angular在渲染页面之前解析承诺。
我不明白为什么这只发生在iOS应用程序上,而不是网页浏览器上。当我删除resolve
部分,页面显示没有闪烁,虽然我没有活动填充。
可能只是性能原因?事实上,我测试了路径/page/meetings/123/edit
在我的Ipad 3(命名为"新Ipad")从一个页面,没有很多的内容,它显示页面后承诺被解决=>好。
奇怪的是,当我把同样的链接放在一个沉重的页面上,列出了几个项目,目标页面(编辑页面)仍然闪烁,大约1秒没有显示表单,然后显示整个。
更奇怪的是,Iphone 4s上完全相同的代码涉及闪烁,无论/page/meetings/123/edit
链接在哪里(重或轻页面)。
相反,iPhone 4s和Ipad上的网页移动版本(Safari)是完美的。真的不知道为什么。
After some…经过几个小时的寻找,我找到了原因。
在编辑页的控制器中,我最初这样做:
$anchorScroll(); //scrolling to the top
似乎与元素的显示有冲突。
这就解释了为什么当我从一个需要滚动的页面(比如列表页面中的20个项目)转过来时,冲突就出现了。
所以我选择的解决方案是这样做,为了用最少的时间延迟滚动:
$timeout(
function(){
$anchorScroll();
},
0);
整个现在可以很好地与PhoneGap/Cordova for iOS应用程序。
- Wacom stu-430签名捕获速度太慢
- 如何在速度模板中获取LiferayPortlet实例id
- 我想放慢html中进程栏的速度
- Knockout绑定大量数据的速度较慢
- Wordpress:未捕获引用错误:未定义速度
- 即使光标位于屏幕边缘,也可以跟踪鼠标速度
- Css优化谷歌页面速度洞察
- fullcalendar在删除导致浏览器挂起的多个事件时速度较慢
- 录制速度javascript
- Javascript图像数组预加载速度和从内存中删除
- 谷歌地图多边形减慢浏览器速度
- nodejs/ccurlhttp请求与postlerrest客户端相比速度较慢
- 从Three.js场景中删除许多对象的速度较慢
- 构建多个图表时,HighCharts加载数据的速度较慢
- jQuery.length()速度含义
- Javascript滑块是't装载速度不够快
- angularjs 子指令 DOM 加载速度不够快
- animate() 更新速度不够快
- 打开选择之前的事件.(单击工作速度不够快)
- Ipad 3和Iphone 4s的速度不够快