[英]Backbone JSON collection to be fetched on template
我只是在写一个简单的骨干程序。 但是我不确定将JSON数据推送到下划线模板时我在做什么错。 任何帮助表示赞赏。
我的代码如下所示:
<!doctype html>
<html>
<head>
<title>Backbone tutorial</title>
</head>
<body>
<div class="user">user</div>
<div class="page"></div>
<script type="text/template" id="user-list-template">
<h1> <%= data.key %> </h1>
</script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="underscore.js"></script>
<script type="text/javascript" src="backbone.js"></script>
<script>
这是我的收藏代码
var Album = Backbone.Collection.extend({
url : "/data.json"
});
这是我的查看代码
var UserList= Backbone.View.extend({
el:'.page',
template:_.template($('#user-list-template').html()),
render : function(){
var that=this;
var album= new Album();
album.fetch({
success:function(album){
var _data = {data : album.models} ;
$(that.el).html(that.template(_data));
}
})
}
});
这是我的路由器代码
var Router = Backbone.Router.extend({
routes: {
"": "home" // #help
}
});
var userList= new UserList();
var router = new Router();
router.on('route:home', function(){
userList.render();
});
Backbone.history.start();
</script>
</body>
</html>
这是data.json文件
{ "key" : "value to print on template "}
这里有很多问题。 首先,集合应由模型组成,您可以在创建集合时由模型指定这些模型。 其次,成功回调返回接收到的数据,而不是集合。 第三,在渲染调用中执行AJAX是个坏主意。
您应该做什么,理想情况下是:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.