1

設定:

  • 何とか私の残り火アプリです
  • find 基本的に Ember.$.ajax(url, params, method) を呼び出します
  • find メソッドはブロッキング呼び出しではありません
  • ルートもコントローラーも相互に依存関係 (ニーズ) がありません

問題:

  • 私のCowRoutesモデルからajax呼び出しが返されるまで、ApplicationRouteのsetupController(私もアクティブ化を試みました)が実行されない理由を理解しようとしています。

牛ブロックのメタとユーザー

私が試したこと:

  • コードを setupController から CowRoute のモデルに移動すると、それらはすべて並行して実行されます (特にヘッダー フッターであり、CowRoute の横にある別のルートにヒットする可能性があるため、ここにはまったく属しません)。
  • find メソッドで Ember.RSVP.resolve を使用してみましたが、すべてがまだ機能しており、まだシリアルで実行されています

アプリケーションルート

blah.ApplicationRoute = Ember.Route.extend({

    // setupController runs If a route handler's context changes
    setupController: function () {
    this.controllerFor('meta_property').set('model', blah.MetaProperty.find('meta_property'));
    this.controllerFor('header').set('model', blah.User.find("user"));
    }

カウルート

blah.CowRoute = blah.Route.extend({
    model: function (params) {
    //this.controllerFor('meta_property').set('model', blah.MetaProperty.find('meta_property'));
    //this.controllerFor('header').set('model', blah.User.find("user"));
    return blah.Cow.find('cow', params);
    //return Ember.RSVP.resolve(blah.Cow.find('cow', params));
    }
4

2 に答える 2

1

慣例によると、URL になく、複数のルートにまたがるモデルがある場合は、それらをアプリケーション ルートに配置するのが理想的です ;)

于 2013-05-17T14:55:00.797 に答える