Javascript 未编译AngularJS ng src/ng data attr

Javascript 未编译AngularJS ng src/ng data attr,javascript,angularjs,pdf,Javascript,Angularjs,Pdf,您好,我正在从Web服务请求一个pdf,希望在请求完成并生成ObjectUrl后显示pdf。我的问题是,“嵌入”中的ng src或“对象”中的ng data attr没有编译,浏览器正在下载url/{{pdfData}} 这是我的DOM: <div ng-if="pdfData != ''"> <embed ng-src="{{pdfData}}" style="width:200px;height:200px;" type="application/pdf">

您好,我正在从Web服务请求一个pdf,希望在请求完成并生成ObjectUrl后显示pdf。我的问题是,“嵌入”中的ng src或“对象”中的ng data attr没有编译,浏览器正在下载url/{{pdfData}}

这是我的DOM:

 <div ng-if="pdfData != ''">

    <embed ng-src="{{pdfData}}" style="width:200px;height:200px;" type="application/pdf"></embed>

    <!--<object ng-bind="pdfData" data="{{pdfData}}" type="application/pdf" width="100%" height="800px">-->
    <br>Objekt:
   <object ng-attr-data="{{pdfData}}" type="application/pdf" width="100%" height="800px">


目标:
我的JS代码:

$http.post('url', { }).
   then(function(response) {
      var byteCharacters = atob(response.data.trim())
      var byteNumbers = new Array(byteCharacters.length);
      for (var i = 0; i < byteCharacters.length; i++) {
         byteNumbers[i] = byteCharacters.charCodeAt(i);
      }
      var byteArray = new Uint8Array(byteNumbers);
      var blob = new Blob([byteArray], {type: 'application/pdf'});

      var blobUrl = URL.createObjectURL(blob);

      $scope.pdfData = $sce.trustAsResourceUrl(blobUrl);

      }, 
      function errorCallback(response) {
           console.log(response);
      });
$http.post('url',{})。
然后(功能(响应){
var byteCharacters=atob(response.data.trim())
var byteNumbers=新数组(byteCharacters.length);
for(变量i=0;i
当我运行上述代码时,它在Google Chrome上运行良好,但在IE/Firefox上运行不好

我还尝试了一个自己的指令,如下所述:

但是我有一个问题,当我为另一个PDF创建新的src url时,分配给$scope.pdfData的新PDF没有加载到嵌入或对象控件中


感谢您的帮助

您想制作snippet还是JSFIDLE来澄清问题?您好,我准备了一个plunkr。不幸的是,加载base 64的请求不起作用(但在我的环境中我对它没有问题)。但也许你知道出了什么问题。谢谢你的帮助!Plunkr:您想制作snippet还是JSFIDLE来澄清?您好,我准备了一个Plunkr。不幸的是,加载base 64的请求不起作用(但在我的环境中我对它没有问题)。但也许你知道出了什么问题。谢谢你的帮助!普朗克: