关于以下代码:
var leaderList = new app.LeaderCollection();
var leaderListView = new app.LeaderListView({collection:leaderList});
$(document).ready(function() {
leaderList.fetch();
});
为什么当它有效时却不起作用:
$(document).ready(function() {
var leaderList = new app.LeaderCollection();
var leaderListView = new app.LeaderListView({collection:leaderList});
leaderList.fetch();
});
我知道显示的代码并不深入,我想知道是否有人清楚地知道为什么这两段代码的行为会有所不同。
最佳答案
问题可能是由于 el
元素在 View 内的行为方式造成的。
当您在 Document.ready
函数之前运行时,el
元素可能不在 DOM
中
在第二种情况下,您首先等待 DOM 加载,然后初始化 View 。检查网络选项卡。响应应该已被服务器转储,但 View 无法找到 el
来呈现集合的模型。
关于javascript - Backbone.js 的初始化顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18026508/