angular输出带有style样式的html

问题描述:要使用angular获取一个HTML格式且含有style样式的字符串

首先,angular输出html格式的字符串(note)的实现方法为:

<div [innerHTML]="note" ></div>

但是,运行代码后发现,这样并不能够将note字符串中的style样式显示出来。

angular输出带有style样式的html格式的字符串的实现方法为:

1.自定义一个HtmlPipe类

import {Pipe, PipeTransform} from "@angular/core";
import {DomSanitizer} from "@angular/platform-browser";
@Pipe({
  name: "html"
})
export class HtmlPipe implements PipeTransform{
  constructor (private sanitizer: DomSanitizer) {
  }
  transform(style) {
    return this.sanitizer.bypassSecurityTrustHtml(style);
  }
}

2.在需要的模块中引入管道HtmlPipe

import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { HtmlInfoPage } from './html-info';
import {EmptyViewComponentModule} from "../../../components/empty-view/empty-view.module";
import {HtmlPipe} from "../../../providers/pipe";

@NgModule({
  declarations: [
    HtmlInfoPage,
    HtmlPipe
  ],
  imports: [
    IonicPageModule.forChild(HtmlInfoPage),
    EmptyViewComponentModule
  ],
  exports: [
    HtmlInfoPage
  ]
})
export class HtmlInfoPageModule {}
3.在innerHTML中增加管道名称
<div [innerHTML]="note | html" ></div>
这样就能够显示含有style样式的HTML文本。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值