2017-02-22 14 views
0

未達成の約束がある場合、 "ローディング"インジケーターを表示したい。これはグローバルにする必要があります。つまり、このインジケータをすべての場所で手動で表示/非表示することは望ましくありません。不完全な約束を表示して、表示を表示する

なぜEmberの「ローディング」ルートが非常に限られているのか。戻るボタンやコンポーネントでは機能しません。そして私は、この「積み込み」インジケーターを、常に1つのアクティブな約束がある場合に表示したいと思います。それが何をしているかは関係ありません、私は気にしません、単に指標を示したいと思います。

これを行う方法はありますか?それとも悪い考えですか?

+0

これは悪い考え、使いやすさ、プログラム的な賢さのようです。 – locks

答えて

1

アプリケーション内のグローバル共有状態の場合は、serviceを使用してください。

serviceの中で宣言された約束の状態をコンポーネントが確認するようにしてください。

あなたはそれがあなたのアプリケーションがあまりにも管理することが困難に作ることができるグローバルな状態であるので、それを使いすぎないでください

https://guides.emberjs.com/v2.1.0/applications/services/

、でのサービスについての詳細を読むことができます。

+0

アプリですべての約束をどのように監視するのですか?私は約束のためのラッパーとしてサービスを使用することができ、それを使用することができますが、例えば、このラッパーを使用するためにember-dataを教える方法はありますか? –

+0

アダプター?私は前にこれをやったことがありますが、アダプタは要求が発せられた場所です –

+1

アダプタ - 多分、私はそれに掘り下げます、ありがとう。実際に私が探しているのは、RubyのObjectSpaceモジュールの類似点です.Appleに割り当てられているすべての約束を取得するモジュールです。または猿パッチの約束 –

関連する問題