如何在頁面呈現一段html代碼段呢?在textarea中我們這樣寫:<textarea name="" id="" cols="30" rows="" ng-model="app.someHtml"></textarea>也可以這樣寫:<div ng-bind-html="app.someHtml"
如何在頁面呈現一段html代碼段呢?
在textarea中我們這樣寫:
<textarea name="" id="" cols="30" rows="" ng-model="app.someHtml"></textarea>
也可以這樣寫:
<div ng-bind-html="app.someHtml"></div>
在controller中大致這樣寫:
var app = angular.module('app',[]);
app.controller("AppCtrl", function(){
var app = thisj;
app.someHtml = '<a href="#">Hello</a>';
})
但,這樣會報錯。
如何避免呢?
--需要安裝angular-sanitize
npm install angular-sanitize
controller中改成這樣:
var app = angular.module('app',["ngSanitize"]);
app.controller("AppCtrl", function($sce){
app.someHtml = $sce.trustAsHtml('<a href="#" style="color:red">Hello</a>');
})
$sce用來信任html代碼段。好讓類似style這種屬性生效、被信任。