Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Backbone.js初始化顺序_Javascript_Html_Backbone.js - Fatal编程技术网

Javascript Backbone.js初始化顺序

Javascript Backbone.js初始化顺序,javascript,html,backbone.js,Javascript,Html,Backbone.js,关于以下代码: var leaderList = new app.LeaderCollection(); var leaderListView = new app.LeaderListView({collection:leaderList}); $(document).ready(function() { leaderList.fetch(); }); 当这起作用时,为什么不起作用: $(document).ready(function() { var leaderList

关于以下代码:

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
元素在视图中的行为方式

Document.ready
函数之前运行
el
元素时,该元素可能不在
DOM


在第二种情况下,您正在等待首先加载DOM,然后初始化视图。检查网络选项卡。服务器应该转储响应,但视图无法找到用于呈现集合模型的
el

哦,对了,我忘了
fetch()
是异步的。为什么在第二段代码中它的行为会有所不同呢?这似乎是在初始化变量,然后按正确的顺序获取。查看
app.LeaderListView
可能会有所帮助哦,你的答案很有道理。非常感谢,我相信这是正确的答案。很高兴能帮上忙。。只要仔细检查一下,您就可以在开发人员工具中打开网络选项卡并检查响应。