[英]Backbone Mixins reference to instance
我对如何解决此问题感到困惑,并希望您提出意见。 我创建了一个库,该库以下划线与节点和浏览器的协作方式为模型。 这是代码的摘要版本: https : //gist.github.com/76121b90fb1ae392a4de
请注意,我正在使用Mixin覆盖某些类的sync方法。 在这种情况下,为Session类。 这是因为我们的某些端点不是轻松的,而是JSON RPC,因此我必须以不同的方式处理它们(请参阅第51行)。
该配置将传递给MyLibrary的实例化(第86行)。 然后可以通过例如window.mylibrary.area.jsproxi来访问那些配置变量。 很好...问题是我无法找到一种优雅的方法来从mixin.sync方法中访问实例的相同属性(第11和12行是示例)。
有任何想法吗? 我不知道实例化后如何从库中获取MyLibrary实例。 我不能使用要附加到窗口的名称,因为我不知道该名称是什么。
非常感谢你!
路易斯
首先从如何使用Backbone中的mixins的角度出发,看一下以下解决方案: 在Backbone中执行视图mixins的正确方法 。 这样可以确保您在任何给定时间都正确无误。
其次,您要实例化一个新的MyLibrary,它是一个模型
new MyLibrary({
"area": {
"ajax_synchronization_token": "sometoken",
"jsproxy": "proxytoken"
},
"user": {
"key": "somekey",
"signature": "somesignature"
}
});
并期望这样访问这些值:
this.area.ajax_synchronization_token,
this.area.jsproxy
而您实际上应该如何尝试访问这些值是
var area = this.get('area'); // it's a model after all
area.ajax_synchronization_token
area.jsproxy
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.