繁体   English   中英

自动更新骨干下划线模板

[英]Automatically updating backbone underscore template

我有一个骨干集合,该集合使用fetch方法从服务器获取对象数组,而我试图做的就是只是遍历模板中的每个对象并读取其属性。 以下是集合和模板

APP.MyObjects = Backbone.Collection.extend({
    url: '/api/objects/',
    model: APP.MyObject,
    initialize: function() {
        this.fetch();
    }
});
APP.myObjects = new APP.MyObjects(); // Fetches the data

现在在模板中,我想要做的是:

<% _.each(APP.myObjects.toJSON(), function(obj) {%>
    <%= obj.title %>
<% }); %>

我面临的问题是Collection.fetch调用是异步的,因此在呈现模板时, APP.myObjects.toJSON的长度为0 所以我看不到对象属性,即使异步获取调用完成后,模板也不会更新。

问题

更新或更改APP.myObjects列表时,如何自动更新模板? 在Angular中,我们使用watch来实现我想达到的目标,我对骨干和下划线还不陌生,所以我想知道实现此目标的最佳方法是什么。

我只需要在视图的initialize方法中添加此行,以确保在更新后重新呈现模板。

MyObjectListView = Backbone.View.extend({
    initialize: function(){
        this.listenTo(APP.myObjects, 'update', this.render);
    }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM