0
Ionic 2 passing tabs NavParams to tabIonic 2親から子のタブへの非同期データの受け渡し
このソリューションは機能します。しかし、パラメータが親の非同期メソッドによって取得された場合はどうなりますか?最初のタブは決して "foodId"の価値を得ることはありません。 これを行う方法はありますか?
Ionic 2 passing tabs NavParams to tabIonic 2親から子のタブへの非同期データの受け渡し
このソリューションは機能します。しかし、パラメータが親の非同期メソッドによって取得された場合はどうなりますか?最初のタブは決して "foodId"の価値を得ることはありません。 これを行う方法はありますか?
あなたがリンクしている質問のsecond answerは良い解決策です。タブと親の両方が共有するサービスを使用します。あなたは、データが利用可能なときにタブが知っているように約束を使用することができ、あなたのサービスで
:
あなたの親、彼らが利用可能な場合、あなたがのparamsを得ることができますページで次にimport {Injectable} from 'angular2/core';
@Injectable()
export class Service{
constructor(){}
}
getParams() {
asyncMethod().then((data) => {
this.params= data;
Promise.resolve(params) });
}
}
:
this.service.getParams().then((params) => {
// do whatever with the params
});
同じこと...親と最初のタブが同時に作成されるとき、親が非同期メソッドから情報を取得するとき、子はデータを持っていません。 解決策は、この非同期メソッドを最初のタブに配置し、そのサービスを使用して他のタブを介してデータを渡すことです。 – molinet
あなたの元の問題である「決して」と「親が情報を得たとき」との間には違いがあります。非同期メソッドをタブに移動する必要はありません。親に残して、誰にでもサービスを使用してください。私の編集を見てください。 –