从模板将参数传递给构造函数

时间:2018-02-12 11:28:39

标签: angular typescript

一个非常基本的设置,组件:

export class LayerComponent {
    public content: string;

    constructor(content: string) {
        this.content = content;
    }
}

及其模板:

<p>{{content}}</p>

从另一个组件我想(静态地)实例化传递内容参数的组件(不需要绑定它)。我采取了以下不起作用的方法:

<ipe-artboard-layer content="Joep"></ipe-artboard-layer>
<ipe-artboard-layer content="Floris"></ipe-artboard-layer>
<ipe-artboard-layer content="Casper"></ipe-artboard-layer>

这种方法是否可行,值得商榷?我宁愿不去寻找一个真正的绑定,因为它只是为一些属性实例化一次性初始值。

1 个答案:

答案 0 :(得分:2)

AFAIK无法以这种方式调用构造函数。

您正在寻找的是@Input()绑定:

<ipe-artboard-layer [content]="Joep"></ipe-artboard-layer>

在你的组件中:

export class LayerComponent {
    @Input()
    public content: string;

    constructor() {}
}

在这里,您可以阅读more about component interactions