下面的简单代码会引发错误:
“未捕获的类型错误:无法使用'in'运算符在backbone-min.js中的Leo”中搜索'id':9
http://jsfiddle.net/nW7KF/
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script src="http://ajax.cdnjs.com/ajax/libs/underscore.js/1.1.4/underscore-min.js"></script>
<script src="http://ajax.cdnjs.com/ajax/libs/backbone.js/0.3.3/backbone-min.js"></script>
<script>
var User = Backbone.Model.extend({
initialize: function(n) {
this.name = n;
}
});
var user = new User("Leo");
</script>
</body>
</html>
我怎样才能让这段代码与Backbone.js一起工作?
3条答案
按热度按时间pprl5pva1#
您没有正确构造模型。请参阅backbone.js的文档:
在创建模型示例时,可以传入属性的初始值,这些值将在模型上设置。如果定义了初始化函数,则在创建模型时将调用该函数。
因此,您可以像这样构建模型:http://jsfiddle.net/nW7KF/2/
pzfprimi2#
就在前几天,我遇到了同样的错误,问题是我使用的是较新版本的Backbone(1.2.1),它示例化模型的方式显然与以前略有不同,我一直在使用该库的1.1.1版本,但是当我更新到1.2.1时,我开始看到同样的错误。当我恢复到1.1.1时,错误就消失了。如果您看到同样的错误并进行同样的库更新,可能需要注意一些问题。
bvjxkvbb3#
您链接的文件已过期。请更新这些文件。