Page
レンダリングされる前にデータを非同期に取得する正しい方法は何ですか?
Angular2
@CanActivate
私が理解している限り、デコレータを提案します。悲しいことに、これは Ionic2 では機能しません。少なくとも私や他の人にとってはそうではありません。
どうやらデコレータでIonic2
何かを行うようですが、それは文書化されておらず、正確に何をするのかわかり
ません。@CanActivate
それにもかかわらず、この男Ionics View States
は、イオンキャッシングのために、とにかく代わりに使用する必要があると指摘しています。彼の例は次のようになります。
onPageWillEnter() {
return this._service.getComments().then(data => this.comments = data);
}
これは、Ionic が返された promise を考慮することを期待しているように見えますが、Ionics のソースを一目見ただけで、返された値が無視されていることがわかります (少なくとも私はそう思います)。したがって、ページがレンダリングされる前にpromise が解決されるという保証はありません。onPage*の例と、必要/期待どおりに実行されない方法を次に示します。
どうすればこの単純なタスクを達成できますか?
最初のリンクでは、ページに移動する前にデータを解決することが提案されていました。これは、呼び出し先のページに必要なデータを知るのに負担がかかります。私の意見では、これはオプションではありません。
*編集: 否定的な例を追加