2013-10-09 25 views
0

当呈现Backbone.View时,您通常会将模型model.toJSON()的当前状态传递给它,并且可能还有一些额外的属性。这是一项同步任务。如何处理Backbone视图中的异步链接模型

你如何处理与需要像它需要从服务器获取另一种模式的ID异步任务模型上的属性(例如person_id

你解决,并附上个人的属性到在同步和渲染之前建模属性,还是渲染视图并侦听人物获取事件以重新渲染视图的那部分?

注意:我使用Backbone.Marionette所以感到有点不限于改变渲染方法

回答

0

答案是:这取决于:-)

根据具体情况,您:

  • 获取从模型服务器,然后显示视图
  • 更新已经显示

通常模式,如果你显示“新”的数据(即整个模型需要获取),我会显示加载视图,而数据正被取出,然后显示新视图(和数据),当它被取出(参见https://github.com/davidsulc/marionette-gentle-introduction/blob/master/assets/js/apps/contacts/show/show_controller.js

但在其他情况下(例如用户返回到“您可能还会喜欢”的产品列表,例如在亚马逊上),您可以显示手边的数据,获取“新鲜”数据并重新显示视图。

总而言之,这取决于您想要提供的用户体验。

+0

谢谢,你的回答非常有用,尤其是github项目。 –