1

我試圖使用$interpolateng-bind-html將我的範圍變量的數據綁定到一個html字符串this answer。現在,當我的範圍變量的值更新ng-bind-html結果時,它不更新。ng-bind-html中的角度命令

每當我的示波器更新時,我都不想撥打$interpolate

這是我的控制器代碼:

$scope.TitleFlag= true; 
$scope.HtmlContent = "<div>{{TitleFlag}}</div>"; 
$scope.trustedHtml = $interpolate($scope.HtmlContent)($scope); 
$scope.TitleFlagToggle = function(){ 
    $scope.TitleFlag= !$scope.TitleFlag; 
    }; 

這是我的看法代碼:

<div>{{TitleFlag}}</div> <!-- This is update correctly --> 
<div ng-bind-html="trustedHtml"></div> <!-- This is not update --> 
<button class="button" ng-click="TitleFlagToggle()"></button> 

回答

0

雖然TitleFlag正在發生變化,我們需要插值它。因此,也將$ scope.trustedHtml放入點擊功能中。

$scope.TitleFlag= true; 
$scope.HtmlContent = "<div>{{TitleFlag}}</div>"; 
$scope.trustedHtml = $interpolate($scope.HtmlContent)( $scope); 
$scope.TitleFlagToggle = function(){ 
    $scope.TitleFlag= !$scope.TitleFlag; 
    $scope.trustedHtml = $interpolate($scope.HtmlContent)( $scope); 
}; 

http://plnkr.co/edit/rRjHOY2xSiAZ8EtzviqK?p=preview