用代码更好地解释,是否有解决此错误的方法?我试图模拟一个命名空间。
window.SomeNamespace = {
Notification: Backbone.Model.extend(),
Notifications: Backbone.Collection.extend({
model: SomeNamespace.Notification //error here. SomeNamespace is not defined
}),
};
最佳答案
直到执行了window.SomeNamespace
的右侧,才会定义SomeNamespace
,从而不会定义全局=
。因此,您必须将其分为两部分。
window.SomeNamespace = {
Notification: Backbone.Model.extend(),
};
window.SomeNamespace.Notifications = Backbone.Collection.extend({
model: SomeNamespace.Notification
});
当然,您可以使用
extend()
方法以更好的方式进行操作。