私は、inputとしてelementIdを取得するAngular 2コンポーネントを持っており、それをdivのid属性として設定します。何らかの理由でdivのIDが設定されません。角度2入力IDが要素にバインドされていません
@Component({
selector: 'my-chart',
template: `
<div>
Hello {{elementId}}
<div [id]="elementId"></div>
</div>
`
})
export class MyChartComponent implements OnInit, OnChanges {
@Input() elementId: string;
ngOnInit() {
this.createChart();
}
createChart() {
console.log("ID: ", this.elementId);
...
}
}
これは、それが親コンポーネントで次のようになります。
<div *ngFor="let chart of charts">
<my-chart [elementId]="chart.id"></my-chart>
</div>
-
私はdiv要素に要素を検査するとき、それはid属性がONに設定されなかったことを示していますHTML要素。また、Hello {{elementId}}は "Hello"のみを表示します。要素の記入はありません。下の写真を参照してください。
しかしconsole.log
文は正しく結合入力が正しいことを示す、IDを出力します。
画像:Inspect Element shows id is missing
あなたの答えはありがたいですが、これもうまくいきませんでした。私は問題がコールのタイミングに関係しているとは思わない。問題は、divのIDが設定されていないことです。もはや私がどれくらい待っても、IDはまだ設定されていません。 ngOnInit()のconsole.logはthis.elementId **が**存在し、正しくバインドされていることを示しています。 – florentine
ええ、それは私が得たものです。 –
こんにちはAniruddha、私はもう少し明確な質問を編集しました!ありがとう – florentine