王明德
王明德
  • 发布:2019-05-04 02:11
  • 更新:2020-09-22 16:24
  • 阅读:2552

uni-app 中怎么禁止超连接自动唤醒第三方app

分类:uni-app

有个超连接是淘宝连接:https://mo.m.taobao.com/optimus/jhspt2c?pid=mm_1_2_3
怎么能让他只进入页面,而不自动唤醒淘宝,用overrideUrlLoading()也不管用
我是这样写的:

let wv = plus.webview.open(url,type,{top:'100px'})  
wv.overrideUrlLoading()

求大神指教

2019-05-04 02:11 负责人:无 分享
已邀请:
辛德瑞拉

辛德瑞拉 - js 也会 php 也会 但是都是皮毛,,,

overrideUrlLoading 传入拦截参数,淘宝的超链接唤醒手淘,用的协议一般是tbopen 或者taobao://
你可以在页面中找一下,使用的哪种协议,拦截一下就可以

  • 王明德 (作者)

    大神,现在原因找到了,我这只是获取到了当前页面,没有对子页面拦截,但是又有个新问题,match的匹配规则搞不懂,比哪我想拦截包含click的url,但是match:'click'或者match:/click/都不管用,搞的头都晕了

    2019-05-05 23:18

  • 辛德瑞拉

    回复 王明德: 你这正则写的不对吧,正则表达式也不是这么写的

    2019-05-06 08:55

王明德

王明德 (作者) - 80后宅男

大神帮忙看一下是不是我的代码有问题,怎么都拦载不了
<template>
<view>
<web-view :src="https://mo.m.taobao.com/optimus/jhspt2c?pid=mm_1_2_3"></web-view>
</view>
</template>

onLoad(){  
 setTimeout(()=>{  
    //const currentWebview = this.$mp.page.$getAppWebview();  
    const currentWebview = plus.webview.currentWebview();  
    console.log(JSON.stringify(currentWebview))  
    currentWebview.overrideUrlLoading({  
        mode:'reject'  
        },e=>{  
            console.log(1,e)  
    });  
},300)  
}
  • 辛德瑞拉

    最好采用create的方式创建页面,var a = plus.webview.create(); a.overrideUrlLoading({}) ;这种格式 获取当前页面,然后拦截不是很好用,

    2019-05-06 08:57

  • 王明德 (作者)

    回复 辛德瑞拉: 好的,谢谢大神

    2019-05-07 08:35

Jjiawen

Jjiawen

大佬你怎么解决的?我也遇到这个问题了,没有办法阻止网页唤醒第三方app啊;
求大佬指条明路啊,菜鸡拜谢了

该问题目前已经被锁定, 无法添加新回复