1. 物理键路由回退功能改成关闭页面:
http://docs.wex5.com/wex5-app-question-list-2003/
原因:只有Android手机会提供回退键,关于回退键的操作,平台已经做好了封装!当然也可以自己接管回退的事件,我再这里简单介绍下逻辑调用的过程,方便大家参考!
解决方案:
比如,外卖案例,仿淘宝案例都接管了attachDoubleClickExitApp 事件,return true 就表示接管双击退出!return false 表示路由回退!参考案例,可以自己接管判断逻辑!这个方法UI2/system/components/justep/common/utils.js中,你可以看下源码:document.addEventListener(‘backbutton’, listener, false);实际上就是接管了返回键要执行的事件,history.back(); 是路由的回退,有些用户不希望路由回退,而是关闭页面,就可以把这行代码改成justep.Shell.closePage();navigator.app.exitApp();是app的退出!如果不想真正的关闭APP,就可以把这行代码去掉!
记得执行合并资源的操作:\tools\dist\dist.bat
2. 预加载页面
http://docs.wex5.com/wex5-ui-question-list-2197/
页面shell.showPage跳转的时候,先预加载页面,等页面预加载完成后再跳转!
1.
可以先调用shell.loadPage()
预加载这个页面!等会儿再shell.showPage跳转
比如仿淘宝:list页面先调用
justep.Shell.loadPage(“detail”);
2.
如果是点击后立即跳转页面的!
可以判断是否所有请求都执行完了
http://docs.wex5.com/wex5-ui-question-list-2090
保证打开的页面预加载完了再跳转
怎样判断页面所有同步请求都执行完了?
可以通过判断loadingBar 组件,这个进度条是否执行完了。如果请求没有执行完,页面中会有这个class属性值:x-default-overlay-open
当请求执行完了,loadingBar 也会走完的,所以可以通过js代码 setInterval循环执行代码判断
var int=setInterval(clock,100)
function clock()
{
if(document.getElementByClassName('x-default-overlay-open')){
//没加载完
}else{
int=window.clearInterval(int);
//加载完成
}
}
3. 防止应用采用自带方式弹出错误提醒
如何修改错误提示框
http://doc.wex5.com/wex5-ui-question-list-0002/
问题描述:如何修改系统的错误提示框。
解决方案:
第一步:修改/UI2/system/lib/base/error.js文件中的错误提示相关的代码;
第二步:执行%JUSTEP_HOME%/tools/dist/dist.bat合并文件;
找到以上路径下window.onerror函数,然后隐藏掉原有的window.errorDialog函数,再加上自己的实现方式。
调用sendRequest 时屏蔽hint弹出的报错信息
http://docs.wex5.com/wex5-ui-question-list-2033/
原因:有些用户不想因为网络等问题,调用sendRequest 请求baasServer时看它错误弹出框!
解决办法:
修改这个文件:/UI2/system/lib/base/baas.js屏蔽一行代码self.showError(msg); 注释这里没有用,试试注释掉上面一句open.error.call(this,msg,xhr)
然后重新合并资源:tools\dist\dist.bat
4. 动态添加组件
使用list组件,list组件绑定一个data,通过给data新增数据的方式添加组件