私はngOnchangesを新しくして、問題に直面しています。角度:ngOnChangesは値を更新しません
親コンポーネントは、ngOnChangesに値を設定し、同じ値を子コンポーネントに送信します。子はngOnChangesの入力と同じものを受け取ります。 totalVal> 0のような条件によっては、inputFieldをtrueに設定します。これは最初はfalseに設定されています。もしinputFieldが真であれば、私はいくつかのコンポーネントを反応形式で表示します。私の下の構造体がmodel2Form()を実行してもinputFieldはfalseになります。実際のコードを投稿することはできませんので、以下に示すようにプロジェクトごとに構造を作成しました。
この問題を解決する方法を提案してください。
// parent component
ngOnchanges(){
this.recom = [{
totalVal: 5000,
monthlydata: true
}]
}
//child component
@Input()
private recom: any;
inputField: boolean = false;
ngOnChanges(){
this.setValue();
this.loadFuture();
}
setValue(){
if(this.recom.totalVal > 0){
this.inputField = true;
}
}
loadFuture(){
}
model2Form(){
//getting input field as false even if i set it as true in setValue()
if(inputField){
this.heroForm.setControl('secretLairs', addressFormArray);
}
}
<!-- parent component>
<parent-comp [recom]="recom"></parent-comp>
<!-- child component -->
<div [FormControlName]="secretLairs"> </div>
あなたはjsfiddle –
申し訳ブロであなたのコードを提供してくださいすることができ、私はここでVDIので、カントのコピー/貼り付けコードで働きますそこでレプリカを作成しました – Jay
あなたの親のngChangeは動作していますが、子の子は動作していません...右?? –