子コンポーネントに配信されるデータのチャンクは@Input
でconsole.logsですが、アクセスしようとしているオブジェクトがタイプFirebaseObjectObservable<any>
に存在しないというエラーをスローします。ここで"FirebaseObjectObservableの型にプロパティ '...'が存在しません" @Inputで受信したデータを扱うときにエラーが発生しました
は、データのチャンクが他の親コンポーネントで使用されます、それはこの
@Input('busImageQuesI')
questions: FirebaseObjectObservable<any>; // console.logs the questions showing they made it safely to the component.
この子コンポーネントとして提供されていた子コンポーネント内
"questions" : {
"question01" : {
"id" : "an ID",
"name" : "a name",
"question" : "a question",
"answers" : {
"answer01" : {
"answer" : "some answer",
"id" : "an ID"
},
"answer02" : {
"answer" : "another answer",
"id" : "an ID"
}
}
},
"question02" : {....},
"question03" : {....}
}
構成されている方法です、それは自分の子供のいますどの親コンポーネントが呼び出されているかに応じて、どのコンポーネントが表示されるかを決定するために、if文を使用すると考えました。これまでのところ、それは私が私が親コンポーネントに基づいて欲しい質問を送信するためにこれをやっているこの
<multiple-choice-radio *ngIf="expbTrigger"></multiple-choice-radio>
<multiple-choice-radio *ngIf="rebbTrigger"></multiple-choice-radio>
<multiple-choice-radio *ngIf="newbTrigger"></multiple-choice-radio>
のようにテンプレート内の他の要素をトグルすることを使用しています。この
expbTrigger: boolean = false;
rebbTrigger: boolean = false;
newbTrigger: boolean = false;
ngOnInit() {
var myLocation = window.location.pathname;
if (myLocation.includes('expand')){
this.expbTrigger = true;
} else if (myLocation.includes('recreate')){
this.rebbTrigger = true;
} else if (myLocation.includes('new-business')){
this.newbTrigger = true;
}
console.log(this.expbTrigger, this.rebbTrigger, this.newbTrigger);
}
のように見えますそれらのどれもが1つの部分だけに限定されているわけではないので、すべてで使用されているわけではないので、手動で設定し、*ngIf
を使用して必要に応じてオンとオフを切り替えます。
questions
@Input
で受信したオブジェクトには3つの質問があります。 expbTrigger = true
場合、私は、私は、このコードは
questionA: FirebaseObjectObservable<any>;
questionB: FirebaseObjectObservable<any>;
ngOnChanges(){
if(this.expbTrigger = true){
this.questionA = this.questions.question01;
this.questionB = this.questions.question02;
} else if(this.rebbTrigger = true){
this.questionA = this.questions.question03;
this.questionB = null;
}
}
を働くだろう考え出し、私は質問3を使用したいrebbTrigger = true
場合は質問1と2を使用したいが、私はこのエラー
Property 'question01' does not exist on type 'FirebaseObjectObservable<any>'
を取得し、それは同じことを言います質問2と3のために。私がコードをコメントアウトしてconsole.log(questions)
を実行すると、それがログに記録され、その中のすべての質問が表示されます。私はそれをngAfterViewInit
に移そうとしましたが、同じエラーが発生しました。私が見ているすべての例は、1つの単層のデータであるため、入れ子になったデータの本体を検索することに関して、私が間違っていることを伝えるのは難しいです。誰も助けることができますか?