2

Ember アプリで「ページ」が読み込まれていることを視覚的に示すのに問題があります。

gif メソッドとSpin JSの両方を試しました。どちらも非常に遅延が大きく、すべての Ember オブジェクトが読み込まれたときにのみ完全に読み込まれるため、失敗します。この質問と同様の問題

他の人が公開ビルドで使用している方法は何ですか?

編集:これは、アプリが初めて読み込まれるときです。初期ロードは、何らかの形式の視覚的表示を必要とするのに十分な長さです。

4

2 に答える 2

3

読み込みインジケータを使用してドキュメントにオーバーレイを追加できます。CSS で追加すると、Ember が初期化される前に読み込まれます。ember が初期化された後、オーバーレイを削除できます。

私がそれをどのように実装するかの例の下に:

HTML:

<html>
  <head> ... load dependencies ... </head>
  <body class="loading"> ... handlebars templates ... </body>
</html>

CSS:

body.loading:after {
  content: '';
  background: rgba(255,255,255,.3) url(images/loader.gif) 50% no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
}

残り火コード:

App.ApplicationView = Ember.View.extend({
    removeLoader: function() {
        $('body').removeClass('loading');
    }.on('didInsertElement')
});

この方法では、Ember が初期化される前に読み込みインジケータが表示されますが、Ember の初期化が完了するとローダーが削除されます。

于 2013-02-26T10:07:35.577 に答える
1

これにはjQuery ajax コールバックを使用できます。

$(document).ajaxStart(function(){ console.log("ajax started")})
$(document).ajaxStop(function(){ console.log("ajax stopped")})

これは、すべての ajax リクエストに対して機能します。

于 2013-02-11T21:18:40.440 に答える