就是barcode_scan.html的实例,其他地方没改动,只是把common.js文件里的ws.close('auto');换成了scan.close();并且加了一个跳转代码,跳回.vue文件
因为我是从.vue文件跳转到html的,一旦关闭webview直接会把整个项目关闭掉,这不是我想要的结果。
这是我改动代码的原因,现在问题是扫码成功并跳回vue文件之后,再次进入barcode_scan.html页面就没有扫描的动画(功能)了,有什么解决办法呢?尝试过把barcode_scan改成vue文件,但是水平有限没折腾成功。
以下是common.js文件代码
// 处理返回事件
w.back=function(hide){
if(w.plus){
ws||(ws=plus.webview.currentWebview());
if(hide||ws.preate){
ws.hide('auto');
}else{
// ws.close('auto');
scan.close();
window.location.href = "../../index.html#/user/sales-record";
}
}else if(history.length>1){
history.back();
}else{
w.close();
}
};
另外还在barcode_scan.html文件里注释了两行代码(不注释无法正常运行)
// 二维码扫描成功
function onmarked(type, result, file){
switch(type){
case plus.barcode.QR:
type = 'QR';
break;
case plus.barcode.EAN13:
type = 'EAN13';
break;
case plus.barcode.EAN8:
type = 'EAN8';
break;
default:
type = '其它'+type;
break;
}
// result = result.replace(/\n/g, '');
// wo.evalJS("scaned('"+ type +"','"+ result +"','"+ file +"');");
back();
}
ps:由于需求原因,无奈选择直接在vue和barcode_scan.html之间跳,摒弃了实例中的barcode.html页面,不然也不会有这些问题。
希望得到帮助,谢谢各位
1 个回复
ivan8015
http://ask.dcloud.net.cn/question/15689