angular將html代碼輸出為內容的實例
在前端與后臺的拉扯中,很大一部分是因為數據的問題。使用angular會遇到這樣的問題,后臺返回的數據不是自己想要的純字符串,而是帶有html標簽及屬性的,那么我們將它輸出來后,在頁面上就出現(xiàn)了帶有標簽的內容,很不優(yōu)雅。那么找后臺更改的話,又會引起議論拉扯大戰(zhàn),而且人家不一定有時間搭理你。這樣的情況下,我們就要自己動手,豐衣足食了。
通常angular綁定數據有這樣的方法,{{}}或者ng-bind =”,此時數據為帶有html標簽的數據的話,那么就輸出為帶有標簽的數據,不友好。
如何更改呢?
方法一
要輸出為不帶html的內容,需要兩步
1 使用$sce.trustAsHtml();方法將數據轉為unwrapTrustedValue 數據。
$scope.aaa = $sce.trustAsHtml("<h3>html代碼</h3>");
2 ng-bind-html 輸出
<div ng-bind-html='aaa'></div>
方法二 filter過濾器
基于$sce.trustAsHtml()的方法,構造過濾器來進行過濾。
angular.module('app',[]).filter("showAsHtml",function($sce){ return funciton(input){ retrun $sce.trustAsHtml(input); } });
使用的時候直接在數據后加過濾器即可
<div ng-bind-html='bbb|showAsHtml'></div>
使用了$scr.trustAsHtml() 則展示的時候,必須使用ng-bind-htm=‘’的形式,而不能使用{{}}
以上這篇angular將html代碼輸出為內容的實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Angular中使用Intersection Observer API實現(xiàn)無限滾動效果
這篇文章主要介紹了Angular中使用Intersection Observer API實現(xiàn)無限滾動,實現(xiàn)原理為 在data下面加一個loading元素 如果此元素進入視窗 則調用api獲取新的數據加到原來的數據里面,這時loading就會被新數據頂下去,感興趣的朋友一起看看吧2023-12-12Angular.JS判斷復選框checkbox是否選中并實時顯示
最近因為工作需要做了一個選擇標簽的功能,把一些標簽展示給用戶,用戶選擇自己喜歡的標簽,就類似我們在購物網站看到的那種過濾標簽似的,所以這篇文章就給大家介紹了Angular.JS判斷復選框checkbox是否選中并實時顯示的方法,下面來一起看看吧。2016-11-11