Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何构建嵌套的backbone.js模型,这些模型可以与不同的底层同步方法一起重复使用_Javascript_Inheritance_Backbone.js - Fatal编程技术网

Javascript 如何构建嵌套的backbone.js模型,这些模型可以与不同的底层同步方法一起重复使用

Javascript 如何构建嵌套的backbone.js模型,这些模型可以与不同的底层同步方法一起重复使用,javascript,inheritance,backbone.js,Javascript,Inheritance,Backbone.js,我正在构建一个javascript应用程序,向用户呈现两种不同的视图。一个视图是通过我自己的应用程序的web界面,因此可以使用RESTful API进行连接,另一个是在OpenSocial小工具中(因此使用OpenSocial API获取和检索数据) 到目前为止,我所做的是拥有一组通用的模型/视图,可以在web界面和opensocial小工具之间重复使用,并使用mixin来替换opensocial小工具的同步方法 例如 这对单个模型非常有效,但对嵌套模型不起作用(例如,如果MyBaseModel

我正在构建一个javascript应用程序,向用户呈现两种不同的视图。一个视图是通过我自己的应用程序的web界面,因此可以使用RESTful API进行连接,另一个是在OpenSocial小工具中(因此使用OpenSocial API获取和检索数据)

到目前为止,我所做的是拥有一组通用的模型/视图,可以在web界面和opensocial小工具之间重复使用,并使用mixin来替换opensocial小工具的同步方法

例如


这对单个模型非常有效,但对嵌套模型不起作用(例如,如果MyBaseModel包含许多MySubModels)。处理这种情况的最佳做法是什么?我的嵌套模型应该继承其父模型的sync()方法吗?有更好的设计模式吗?

在子类的构造函数中,传递父类的SYNC方法肯定是可能的。如果该方法未绑定,则可以将其复制到子类中,方法与主干相同:

def initialize(attributes, options) {
    _.extend(this, {sync: options.parent.sync});
}
def initialize(attributes, options) {
    _.extend(this, {sync: options.parent.sync});
}