我正在尝试将YouTube视频添加到我的应用中,但angular会移除iframe代码并且不显示,我正在使用此
<div class="content-read" ng-bind-html="data.content"> </ div>
尝试使用ng-bind-html-unsafe,但我认为这是从当前版本的angularjs中删除的
我正在使用角度1.2.3
我也有这个
app.config(['$sceDelegateProvider', function($sceDelegateProvider) {
$sceDelegateProvider.resourceUrlWhitelist([
'self',
'http://www.youtube.com/**',
]);
}]);
有什么想法吗?
感谢
答案 0 :(得分:0)
我找到的最佳解决方案是创建一个符合ng-bind-html-unsafe功能的指令
app.directive('ngBindHtmlUnsafe', ['$sce', function($sce){
return {
scope: {
ngBindHtmlUnsafe: '=',
},
template: "<div ng-bind-html='trustedHtml'></div>",
link: function($scope, iElm, iAttrs, controller) {
$scope.updateView = function() {
$scope.trustedHtml = $sce.trustAsHtml($scope.ngBindHtmlUnsafe);
}
$scope.$watch('ngBindHtmlUnsafe', function(newVal, oldVal) {
$scope.updateView(newVal);
});
}
};
}]);