2014-05-18 49 views
3

我想獲得一些自定義腳本來加載存儲在數據庫中,這取決於我在客戶端的一些邏輯。我的問題是如何去工作。如何在src url處於角度範圍時加載腳本?

我的控制器:

'use strict'; 
angular.module('youshareApp') 
    .controller('ShareCtrl',['$scope','$routeParams' ,'Projectservice',function  ($scope,$routeParams,Projectservice) { 
$scope.projectId=$routeParams.projectId; 
$scope.model.url="/api/v1/project/code/"+$scope.projectId; 
... 

}]); 

我的觀點:

<div class="container" ng-controller="ShareCtrl" style="margin-top: 50px;" > 
<h3>You are currently contributing to : </h3> 

<div class="row" style="margin-top: 10px;"> 
    <div class="col-md-6"><label class="lead">{{model.name}}</label></div> 
</div> 

<div class="row" style="margin-top: 10px;"> 
    <div class="col-md-6"><p class="lead" >{{model.description}}</p></div> 
</div> 
<script ng-src={{model.url}} /> 
</div> 

如何才能使這項工作?

我也試過這個post

有了這個模板:

<div html-bind-unsafe='html'></div> 

這在控制器:

$scope.html='<script src="'+$scope.model.url+'" />'; 
+0

@帕特里克埃文斯感謝編輯我沒有注意到。 –

回答

0

您必須聲明的網址是安全的。你可以通過在這裏讀一下: https://docs.angularjs.org/error/ $ sce/insecurl

可能發生的另一件事是你沒有使用ng-src。

+0

我不認爲它是一個相同的來源策略問題,因爲它是一個腳本標記,因爲它是相同的主機/端口也應該是允許的。 –

+0

但只是爲了舒服我試過它像:'$ scope.html = $ sce.trustAsHtml(' ');'但仍不能正常工作 –

+0

那麼ng-src怎麼樣 – Pbrain19