0

我正在尝试制作这个 ember 应用程序,其中一个控制器依赖于另一个控制器,如下所示:

App.BooksController = Ember.ArrayController.extend({
itemController: 'book'
});

App.BookController = Ember.ObjectController.extend({
needs: 'books',
formattedPrice: function(){
    return "$"+this.get('price').toFixed(2);
}.property('price'),

imageUrl: function(){
    var img = this.get('image');
    return "http://localhost/book-store-restful-api/images/book_covers/"+img;
}.property('image')
});

并且有 2 条路线:#/books#/books/book_id

当我导航到时,#/books我会得到一个包含所有书籍的列表,以及指向每个单独书籍控制器的链接。当我单击它时,它会按预期工作,显示一些单独的书籍信息。但是,如果我浏览到 1 #/books/book_id(它在books模板内呈现),那么书籍列表就会被呈现,但看起来子模板在关联模型被获取之前被呈现,因此当直接导航时,所有单独的书籍属性都是undefined. 如果我在加载后单击相应的链接,则数据可用。

所以简而言之,有没有办法告诉BookController它只在获取模型数据后呈现关联的单书子视图?

4

0 回答 0