Augular中 src和ng-src的区别

src 是 HTML的属性,{{}} 是 ng 的表达式, 表达式可用于很多地方,包含属性,所以直接 src="{{vm.url}}" 其实就是使用ng的表达式给属性赋值,这种做法的缺点是当第一次加载模板的时候浏览器会去请求 “{{vm.url}}” 的地址,当ng编译模板后把 {{vm.url}} 替换成对应的URL后会再次请求真实的地址,所以为了避免第一次无效的请求,ng 自带了ngSrc 指令,其实和ngHref的原理类似

错误写法:
<iframe frameborder="0" width="800" height="560" scrolling="no" style="margin:0 auto;display: block;" src="{{picsDetail.masUrl}}"></iframe>
正确写法:
<iframe frameborder="0" width="800" height="560" scrolling="no" style="margin:0 auto;display: block;"
ng-src="{{picsDetail.masUrl}}"></iframe>


问题IFrame加载视频块有时报404错误!

原因:当DOM 被解析时,会尝试从服务器获取图片。 这时,src属性上的 Angularjs 绑定表达式 {{ model }}还没有执行,所以就出现了  404 未找到的错误。

解决方案解决的版本就是:在图片中使用ng-Src代替src属性,使用这个指令后,请求就只会在Angular执行这个绑定表达式之后才会发出。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值