豆花饭
豆花饭
  • 发布:2015-10-18 03:53
  • 更新:2020-12-05 23:43
  • 阅读:18921

我的开发心得(收藏)

分类:HTML5+

由于没有收藏功能,只能发文章收藏,方便查找,以下是三叔的开发心得
转载:http://ask.dcloud.net.cn/article/399(三叔的开发心得)
由于我经常问问题,每次找这篇文章都好麻烦,所以吧这个弄成文章。
其实我也是菜鸟,这里开一贴,记录我的学习开发中遇到的问题和解决方案,希望能帮助到后来的兄弟们。
openWindow方法

mui.openWindow({"url":"reg_wx.html","extras":{
"openId":openid
}

这样传值到reg_wx.html

在reg_wx.html里

function plusReady(){
var currentView = plus.webview.currentWebview();
document.getElementById("wx_appid").value = currentView.openId;
}
document.addEventListener('plusready',plusReady,false);

这么获取值

=============关于跨域==============================
通过mui的ajax请求是可以实现跨域的。
跨域是浏览器安全里的一个名词。记住了 是浏览器。
而我们的是app,请求并不是走浏览器脚本,而是用的H5+底层请求的。所以不存在什么跨域。直接调用。

===========获取应用入口页面的方法======================

var h=plus.webview.getWebviewById( plus.runtime.appid );
console.log( "应用首页Webview窗口:"+h.getURL() );

==========判断plus对象是否生效=======================

if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}

============获取上一页(获取父页面)的方法==============================

var preUrl = plus.webview.currentWebview().opener().getURL();
console.log(preUrl);

===========双击回退按钮后关闭app的方法==========================

//首页返回键处理
//处理逻辑:1秒内,连续两次按返回键,则退出应用;
var first = null;
mui.back = function() {
//首次按键,提示‘再按一次退出应用’
if (!first) {
first = new Date().getTime();
mui.toast('再按一次退出应用');
setTimeout(function() {
first = null;
}, 1000);
} else {
if (new Date().getTime() - first < 1000) {
plus.runtime.quit();
}
}

};

============手机网络状态========================================

document.addEventListener( "netchange", function() {
var network = plus.networkinfo.getCurrentType();
if(network < 2) {
if(this.network > 1) {
plus.nativeUI.toast('您的网络已断开', undefined, '期待乐');
}
}

if(this.network == 3 && network > 3) {  
    plus.nativeUI.toast('您网络已从wifi切换到蜂窝网络,浏览会产生流量', undefined, '期待乐', '我知道了');  
}  

this.network = network;  

});

==========手机回退键的触发======================================

function plusReady(){
ws=plus.webview.currentWebview();
// Android处理返回键
plus.key.addEventListener('backbutton',function(){
back();
},false);
compatibleAdjust();
}

=============有选择项的提示框==========

//退出登录
doLogout:function(){
var btnArray = ['再逛逛','是的'];
mui.confirm('你确定退出登录吗?', '提示', btnArray, function(e) {
if (e.index == 1) {
$.get(const_server_url+"/1/login/logout.json",function(data){
if(data.code == "200"){
m_login.clear();
mui.openWindow({
id:"registerPhone"
});
}else{
mui.alert(data.message);
}
});
}
});
}

===========微信支付中提示"支付权限检查失败"=========
微信支付有两个,一个是微信公众号的微信支付,
还有一个就是上面这个地址里面的微信支付,这两个微信支付不一样。
所以存在两个APPID、mch_id。
你用对了么

=========app升级代码=======================
参照: http://ask.dcloud.net.cn/question/5022,http://ask.dcloud.net.cn/article/182

45 关注 分享
junyi 蔡繁荣 ahwx1994 晓风7 luobo708 小xiaoc Zhao Roko HawkLu92 jinya 镇 c***@163.com 3***@qq.com Trust 6***@qq.com AAl c***@126.com abiao qiuxiaojun 阿里大飞 willkey 1***@qq.com 雪之梦技术驿站 落雪飞花 w***@qq.com 云里 桔子姐姐 humo 2***@qq.com 爆栈工程师 fategaga f***@163.com piao l丶yc 4***@qq.com f***@qq.com 3***@qq.com DIUDIU丢丢 哥谭市长江大桥 1***@qq.com b***@126.com 沐阳人 2***@qq.com 1***@qq.com jtshushu

要回复文章请先登录注册

4***@qq.com

4***@qq.com

MARK
2018-03-20 12:08
l丶yc

l丶yc

mark
2018-01-09 15:44
n***@126.com

n***@126.com

mark
2017-11-23 15:27
ladesign

ladesign

mark
2017-09-20 14:55
ladesign

ladesign

mark
2017-09-13 13:22
5个萝卜

5个萝卜

mark
2017-06-30 15:05
7***@qq.com

7***@qq.com

mark
2017-06-21 16:07
1***@qq.com

1***@qq.com

mark
2017-05-07 15:41
giddens

giddens

mark
2017-04-20 16:24
爆栈工程师

爆栈工程师

mark
2017-04-01 16:01