如何获取Angular 2组件的html模板?

swa*_*990 7 typescript angular

我有一个简单的角度2组件:

@Component({
  selector: 'test-text',
  template: `<p> Text </p>`
})
export class TestComponent {
  constructor() {}      
  getHtmlContent() {return;} //This should return '<p> Text </p>' as a string
}
Run Code Online (Sandbox Code Playgroud)

我可以将组件的html内容最简单的方法用于什么?

小智 9

你可以用ElementRef.例如

import { Component, ElementRef } from '@angular/core';

@Component({
  selector: 'test-text',
  template: `<p> Text </p>`
})
export class TestComponent {
  elRef: ElementRef

  constructor(elRef: ElementRef) {
    this.elRef = elRef;
  }      

  getHtmlContent() {
    //This will return '<p> Text </p>' as a string
    return this.elRef.nativeElement.innerHTML;
  }
}
Run Code Online (Sandbox Code Playgroud)

  • 这为您提供了 DOM 翻译的 html,它排除了所有绑定。它没有给你实际的`component.template` (6认同)