angular 与video标签

angular 与video标签


我们在angluar中常常使用{{ }}来对一个控制器中的变量绑定到页面(当然也不止这一种方法),所以在给video标签的src属性赋值的时候我们往往会不假思索的这样写:

<video id="infomedia" width='100%' height="auto" controls>
   <source src="{{task.video_url}}">
</video>

一切看起来应该是正确的,不过即使在控制器给了task.video_url一个正确的地址,视频还是不会显示出来,why?
后来想到angluar 不是推荐使用ng-src么?这个不就是加强版吧…于是改成这样:

<video id="infomedia" width='100%' height="auto" controls>
   <source ng-src="{{task.video_url}}">
</video>

然并卵…
纠结之中通过控制台打印的错误了解到,这是个安全问题。于是谷歌之:angular默认不会把一个视频地址认定为一个安全的文件地址,除非在控制器使用$sce事先声明这个地址是可信的,当然使用前需要把这个模块注入到控制器中
方法如下:

task.video_url=$sce.trustAsResourceUrl(str)

如果str是一个正确的视频地址,那个通过这个声明,页面中的视频就能正确播放了^.^!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值