1
私は角度などが新しく、私は解決策で遊んでいます。しかし、ローカルのブール値を渡したいとき、私は定義されていませんか?私はなぜそれを理解しようとしている。これは私のガードです、私のサービスは単にAPIを呼び出し、それは通過しています。私はエラーを表示するために、解決が添付されているコンポーネントにブール値を渡したいと思います。角度2解決 - ローカル変数スコープ
resolve(): boolean {
let passed: boolean;
let uid: string = window['appdata'].uid;
let tbt: string = window['appdata'].tbt
let lang: string = window['appdata'].apiUserLanguage;
if(uid != null || undefined && tbt != null && undefined){
console.log('Uid is: ' + uid + ' tbt is: ' + tbt);
this.validateEmailService.emailCheck(uid, tbt, lang).subscribe(
data => {
passed = true;
},
err => {
passed = false;
}
);
}
console.log('Passed is: ' + passed);
return passed;
}
}
何かがあなたの状態から指摘する:未定義でfalsyです。 あなたの状態で:uid!= null || undefined && tbt!= null && undefined この部分は評価されません。(未定義&& tbt!= null && undefined) 問題の一部である必要があります。 – Juan
渡す値を非同期に設定していますが、値を同期して記録しています。つまり、 'this.validateEmailService.emailCheck'が完了する前に' console.log( '合格:' +合格);が発生します。 – Baruch
ありがとうございました。私の特定のユースケースでは、観測可能ではなく約束を使用してから.then()を使用する方が良いかどうか疑問に思う。 –