html - Angular2 - 在模板之前获取组件html

标签 html typescript angular

我以这种方式定义了 2 个组件 A 和 B:

组件 A:

import { Component, CORE_DIRECTIVES, ElementRef} from 'angular2/angular2';
import ComponentB from ".'ComponentB";

@Component( {
    selector: 'component-a',
    directives: [ CORE_DIRECTIVES ],
    template: `
        <component-b>
            Inner text/html, whatever...
        </component-b>
    `
} )

export class ComponentA( {
    static parameters = [ [ ElementRef ] ];
    element:ElementRef;
    constructor( element:ElementRef ) {
        this.element = element;
    }

    afterViewInit():void {
    }
} )

组件 B:

import { Component, CORE_DIRECTIVES, ElementRef} from 'angular2/angular2';

@Component( {
    selector: 'component-b',
    directives: [ CORE_DIRECTIVES ],
    template: `
        <h1>{{innerContent}}</h1>
    `
} )

export class ComponentB( {
    static parameters = [ [ ElementRef ] ];
    element:ElementRef;
    innerContent:string;

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

    afterViewInit():void {
    }
} )

我想要完成的是使用 <component-b> 之间的内容组件A模板中的标签设置变量innerContent组件 B.

我试过使用 this.element.nativeElement.innerHTML里面afterViewInit ComponentB 类的,但它获取模板变量的 innerHTML,而不是父变量的 innerHTML。

限制: 使用@Inputs/@Outputs 在组件中使用自定义属性不是一种选择。 例如

    <component-b [innerContent]="Inner text/html, whatever...">
    </component-b>

最佳答案

在 ComponentB 模板中,输入:

template: `
    <h1><ng-content></ng-content></h1>
`

关于html - Angular2 - 在模板之前获取组件html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34095585/

相关文章:

javascript - 如何在 jquery 中为新添加的 div 添加点击事件?

html - Angular如何在没有选择器标签的情况下动态生成组件

javascript - Angular2 - *ngFor 和 *ngIf 在同一元素上产生错误

javascript - Angular 没有输入时如何将值设置为0

Angular Flatpickr 将最后选择的日期绑定(bind)到模型而不是当前选择的日期

html - 为什么低分辨率图像在使用视网膜屏幕查看的网站上显得模糊?

jquery - jQuery Mobile 未设置动态附加按钮的样式

html - 基础 zurb 中的切换顶部栏问题

typescript - 如何在带有 SystemJS 的 TypeScript 中使用 momentjs?

typescript - mocha 和 ts-node UnhandledPromiseRejectionWarning :TypeError: Cannot convert undefined or null to object