angular中的href="unsafe:我该怎么摆脱你的溺爱!!

解决方法:angular.module加入下面这行:(依据Angular changes urls to “unsafe:” in extension page

.config(function($compileProvider){
    //注:有些版本的angularjs为$compileProvider.urlSanitizationWhitelist(/^\s*(https?|ftp|mailto|file|javascript):/);,两种都试一下可以即可
    $compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|itms\-apps|ftp|mailto|file|javascript):/);
})

代码视觉效果:

图片描述

值得请注意的是,图中红框内的含义是:

//“排除angular对以itms-apps://开头的appstore链接的安全封锁”

实际上、、、你想排除什么链接就可以在这里添加什么、、、、、
问题解决完毕、、、、


但是下面为什么还有这么长呢?
这是因为,在项目紧急的那段时间,我对于完全陌生的代码是没有解读能力的,只会复制黏贴
我想这大多与我的阅读障碍有关、、、、
但是危急时刻往往能够激发许多奇怪的行为、、、如果你对玄学并不感兴趣,就可以关了


请让我们看看在危急关头我想到了怎样的玄学解法、、、、、、

解决方法:不要使用angular提供的ng-href亲情链接绑定,用directive手工填写href!

1、html内容:先把链接绑定到title上备用(请注意这里的a标签中safe属性,涉及directive相关!)

<a safe title="{{downData[2].link}}" class="button button-positive">
    下载iPhone版
</a>

代码形状:

图片描述

2、directive内容:通过点击事件的驱动,将title手工填入href中

.directive("safe", [function () {
    return {
        link: function (scope, element, attributes) {
            element.bind("click", function () {
                console.log(element[0].title);
                console.log(element[0].href=element[0].title);
            });
        }
    }
}])

代码视觉效果:

图片描述

3、完毕!你有可能再也不用担心angular会过滤掉苹果店的链接了!

图片描述


hi,大家好2333

请看一看我第一次编辑这篇时候的心态、、、、、自以为用高明的办法解决了天大的问题、、、

今天,我遇到了这个:

代码

浏览器代码

<a ng-href="itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware" href="unsafe:itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware">
    test
</a>

看看这个dalao们,我的天这个unsafe到底是个什么啊

233
当然,只要你愿意搜的话,答案是有的:Angular changes urls to “unsafe:” in extension page

然后,我就照做了
效果如下

进阶浏览器代码

233

看看这些同志们,为什么一般链接白名单了,苹果店的链接还是拓麻unsafe啊
经过一小段玄学的思考,我认为这是改变不了的事实

233

那到底该怎么办呢????????总不能跟领导这样解释吧?????


后来,我逐渐明白了、、、
angular貌似有着无论如何也无法不屏蔽苹果的链接

......很多描述.....

哦擦,终于出来了、、、
手机测试,正常!

233
我、、、wtm

最后祝你,身体健康


我是个蠢人,不能像数学冠军那样立刻分析出来最优的解法、、
但是我想我能代表的人也绝对不在少数
有时并不是你想要解决并付出努力,就能够得到好的结果
人生路上,什么时候该知难而退,什么时候该奋力一肛
只怕是穷尽一生也无法得到答案

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值