Backbone.js.reset()无法引导数据
我正在学习一些JavaScript书籍,与Node.js/Express/Jade/Backbone.js混在一起,并尝试使用一个简单的web应用程序来跟踪扑克比赛,以提高我的新手js技能,学习前面提到的技术,同时制作一个像样的扑克应用程序。这是我到目前为止使用web和PeepCodes first Backbone.js Screencast(我将node.js设置为后端api)的各种源代码: 这很好用。我有一个页面,上面有一张扑克锦标赛的列表。但是,在我尝试引导数据,使其在页面加载后不会获取数据(并在几分之一秒内显示未填充的表)之后,它就不再工作了。我将以下代码放在应用程序的一个页面(app.jade,一个jade模板)的主体中,就在Backbone.js使用的容器(#container)之后,并删除了windows.tournaments.fetch();从上述代码中删除行Backbone.js.reset()无法引导数据,backbone.js,Backbone.js,我正在学习一些JavaScript书籍,与Node.js/Express/Jade/Backbone.js混在一起,并尝试使用一个简单的web应用程序来跟踪扑克比赛,以提高我的新手js技能,学习前面提到的技术,同时制作一个像样的扑克应用程序。这是我到目前为止使用web和PeepCodes first Backbone.js Screencast(我将node.js设置为后端api)的各种源代码: 这很好用。我有一个页面,上面有一张扑克锦标赛的列表。但是,在我尝试引导数据,使其在页面加载后不会获取
script(type="text/javascript")
tournaments.reset(!{JSON.stringify(tournies)});
tournies对象将从渲染它的Node.js路由传递到Jade模板(app.Jade)。使用Firebug,我可以看到reset()函数正在成功地以JSON格式获取数据,并且该表正在由主干创建。。。但它没有被填充。任何帮助都将不胜感激,因为我完全不知道问题是什么。此外,如果我在问题的结构上犯了任何错误,我表示歉意,因为我以前没有在这里发布过。如果有,请随时通知我。我的第一个猜测是,当您执行脚本时,文档尚未准备好,请尝试以下操作:
$(document).ready(function(){
tournaments.reset(!{JSON.stringify(tournies)});
});
我的第二点是,您需要查看JSON数据。尝试转到控制台,手动将一些锦标赛添加到集合中,并查看结果,可能在解析过程中存在某种错误
关于你的代码,为了更好地组织你的代码,你应该使用模块模式并用这样的模式命名:tournaments.reset(!{JSON.stringify(tournies)})不是给你一个错误吗?我不知道。它应该给我一个错误吗?我将从和中拼凑某些有关引导数据的引用。我正在我的tournaments集合上运行reset方法,并将一组JSON对象交给它,这些对象对应于tournaments?你可能想说清楚。是的,它在一个玉模板里。我将对其进行编辑以使其更清晰。您确定
tournaments.reset(!{JSON.stringify(tournies)})
最终使用对象数组而不是JSON字符串调用reset
?我不知道任何玉,所以我只是做一些猜测。太好了,它现在与$(文档)完美结合。准备好了。谢谢你的帮助。我有点恼火,因为它是如此简单,我应该知道使用document.ready而且,我只是按照第一次Peepcode放映时的惯例。我真的不知道为什么会这样。还在学习。感谢链接到主干模式名称空间转换。它,以及整个网站本身,看起来信息量很大,很有用。很好,开发起来很有趣:)
$(document).ready(function(){
tournaments.reset(!{JSON.stringify(tournies)});
});