【问题标题】:backbone boilerplate render view issue骨干样板渲染视图问题
【发布时间】:2012-09-12 16:35:10
【问题描述】:

我正在使用骨干样板/骨干布局管理器,并且在调用 place.fetch() 后重新渲染视图时遇到问题。第一次似乎可以正常工作,但是当我第二次获取时,不再调用“渲染”方法。

任何提示都会有所帮助

谢谢

皮特

路由器

test: function() {
    var place = new Place.Model({
      place_id: place_id,
    });
    place.fetch().complete(function(){

    app.useLayout("main").setViews({
        ".place-detail": new Place.Views.Show({
          model: place
        })
      }).render();
   });
}

查看

initialize: function() {
  _.bindAll(this, "render");
 this.model.on("change", this.render, this);
}

render: function(manage) {
  return manage(this).render();
}

【问题讨论】:

    标签: backbone.js


    【解决方案1】:

    fetch 是一个异步函数,它接受带有successerror 处理程序的对象,该处理程序将在完成时调用。 AFAIK fetch 不支持与 complete 处理程序链接的 jQuery 方法,因此如果您希望在完成时调用它,则需要通过设置正确的 success 方法向它传递一个对象。

    【讨论】:

    • 谢谢。但即使我使用成功和错误,视图也不会使用新模型数据重新渲染。我 100% 确定在成功的情况下我会取回模型数据。但不知何故,这里的渲染没有被调用 app.useLayout("main").setViews({ ".place-detail": new Place.Views.Show({ model: place }) }).render();跨度>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-26
    • 1970-01-01
    • 2014-04-07
    • 1970-01-01
    • 1970-01-01
    • 2016-01-23
    相关资源
    最近更新 更多