我正在为一个项目评估Backbone,并且在根据绑定到id输出最简单的视图时遇到问题。这是代码,我确定我犯了一个总的noob错误:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src='underscore.js'></script>
<script src='backbone.js'></script>
<script>
var BandView=Backbone.View.extend({
el:$('#bands-wrapper'),
initialize: function(){
_.bindAll(this,'render');
console.log('you initialized');
this.render();
},
render:function(){
console.log('you are about to render');
this.$el.text('here i am');
return this;
}
});
var myView=new BandView();
</script>
<body>
before
<div id='bands-wrapper'>
after
我没有收到错误,两条错误消息都写入控制台。知道我做错了什么吗?
THX
答案 0 :(得分:2)
尝试在关闭</body>
代码之前移动代码。好像你正在尝试在尚未准备好时访问DOM。
但更好的方法是创建单独的文件,将所有逻辑放在此处并在document.ready上执行。
答案 1 :(得分:1)
在DOM准备就绪时创建视图实例,
$(function(){ var myView=new BandView(); });