Angularjs 中的iframe 标签 ng-src 路径 报错问题 解决办法
iframe中的src直接替换成ng—src不可以,需要转换一下。Angular里面有个属性是专门用来解决跨域问题的 $sce。
PS:$sce ($sce服务把一些地址变成安全的、授权的链接..)常用的方法有:
$sce.trustAs(type,name);
$sce.trustAsHtml(value);
$sce.trustAsUrl(value);
$sce.trustAsResourceUrl(value);
$sce.trustAsJs(value);
$scope.someUrl = $sce.trustAsResourceUrl('路径');
举个栗子 >>
$scope.httpsurl = $sce.trustAsResourceUrl('https://xxxx.xxxx.com/xxx/index.htm'); <iframe ng-src="{{$scope.httpsurl}}" height="100%" width="100%"></iframe>
为了使用方面,挂在过滤器里面
angular.module('app', [])
.filter('iframeSrc', ['$sce', function($sce) {
return function(val) {
return $sce.trustAsResourceUrl(val);
};
}])
HTML
<iframe ng-src="{{someUrl |iframeSrc}}" height="100%" width="100%"></iframe>
< 春风十里不如"你" -- 如果我爱"你" >