2016-07-13 21 views
0

私は注射の問題があります。なぜ私のhtmlがレンダリングされていないのか分かりません。角度HTMLレンダリングの問題

ビューでHTMLをレンダリングする。コントローラーで処理/作成し、htmlビューでレンダリングする必要があります。 HTMLはテキストとして表示される

このコードは、現在動作していない:

var myApp = angular.module('myApp', []); 
 

 

 
myApp.controller('MyCtrl', myController); 
 
     
 
myController.$inject = ['$scope'] 
 
    function myController($scope) { 
 

 
     $scope.html = "<b>HTML inserted</b>"; 
 
};
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.7/angular.min.js"></script> 
 
<div ng-controller="MyCtrl as vm"> 
 
    <div>Html</div> 
 
    <div>{{html}}</div> 
 

 
<br/> 
 
</div>

+2

ngSantize - https://jsfiddle.net/6a6726Lm/5/ – YOU

答えて

0

角度でHTMLのレンダリングのためにNG-バインドHTML属性を試してみてください。あなたのケースでは

<div ng-bind-html="html"></div> 

さらに詳しい情報:

ngBindHtml in AngularJS

編集:またngSanitize依存性を追加します場合は、あなたのモジュールの依存関係で 'ngSanitize' を追加 ngSanitize

+0

https://jsfiddle.net/52gfmff1/1/ Hmmm。動作していないようです...私のコードで何が間違っていますか? –

+0

ng-controller = "MyCtrl as vm"では、vm.htmlを使用してコントローラのプロパティを呼び出します。 ng-bind-html = "vm.html" また、内容がng-bind-htmlに置き換えられているため、divの内部は空でなければなりません。 – jgallegoweb

+0

申し訳ありません - 私はあなたが言ったすべてを持っています。まだ出現していない。あなたは最後に見ていただけますか? https://jsfiddle.net/6a6726Lm/1/ –

0

試してみますあなたはng-bind-htmlを使用しています