AngularJS中页面呈现html代码段

本文讲解了在Angular应用中如何安全地将HTML代码插入到页面上,避免XSS攻击。通过使用angular-sanitize模块和$sce服务,可以信任并安全地显示动态HTML内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

如何在页面呈现一段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这种属性生效、被信任。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值