Javascript 有不同的请求和响应模型-backbone.js
由于请求和响应不匹配,我可以为请求和响应使用单独的模型吗。这是一个完整的RPC调用,而不是CRUD操作。我以前也考虑过同样的问题,我觉得在主干网中没有一个很好的方法来实现这一点。我想到的最好方法是在模型上实现Javascript 有不同的请求和响应模型-backbone.js,javascript,backbone.js,Javascript,Backbone.js,由于请求和响应不匹配,我可以为请求和响应使用单独的模型吗。这是一个完整的RPC调用,而不是CRUD操作。我以前也考虑过同样的问题,我觉得在主干网中没有一个很好的方法来实现这一点。我想到的最好方法是在模型上实现fromResponse和toRequest方法,并重写模型对象并将其映射到它们。比如: //A backbone model var RequestModel = Backbone.Model.extend({}); //A backbone model var ResponseMode
fromResponse
和toRequest
方法,并重写模型对象并将其映射到它们。比如:
//A backbone model
var RequestModel = Backbone.Model.extend({});
//A backbone model
var ResponseModel = Backbone.Model.extend({});
RequestModel.save({
success: function (ResponseModel ) {
alert(ResponseModel .toJSON());
}
})
如果parse
和sync
在某种基类中被重写,那么您只需要为每个模型实现fromResponse
和toRequest
映射器
另一个选项是覆盖主干.sync,并将每个模型
类型映射到某种模型请求映射器
和模型响应映射器
对象以(反)序列化每个模型。我觉得这会更复杂,但如果你有很多模型,可能会扩展得更好
/代码示例未测试我以前也考虑过同样的问题,我觉得在主干网中没有一个很好的方法来实现这一点。我想到的最好方法是在模型上实现
fromResponse
和toRequest
方法,并重写模型对象并将其映射到它们。比如:
//A backbone model
var RequestModel = Backbone.Model.extend({});
//A backbone model
var ResponseModel = Backbone.Model.extend({});
RequestModel.save({
success: function (ResponseModel ) {
alert(ResponseModel .toJSON());
}
})
如果parse
和sync
在某种基类中被重写,那么您只需要为每个模型实现fromResponse
和toRequest
映射器
另一个选项是覆盖主干.sync,并将每个模型
类型映射到某种模型请求映射器
和模型响应映射器
对象以(反)序列化每个模型。我觉得这会更复杂,但如果你有很多模型,可能会扩展得更好
/代码示例未测试我认为当有不同的请求和响应时,最好使用普通的ajax调用,顺便说一句,我可以为这两种调用提供一个通用的模型。。。但并没有让它复杂化。答案是+1。我可能不需要使用toRequest和fromResponse方法,但是
sync
和parse
的存在是为了将端点抽象到模型中。当然,您可以使用plan ajax调用,但是使用主干网有什么意义呢?我认为当有不同的请求和响应时,最好使用普通ajax调用,顺便说一句,我可以为这两种调用提供一个通用的模型。。。但并没有让它复杂化。答案是+1。我可能不需要使用toRequest和fromResponse方法,但是sync
和parse
的存在是为了将端点抽象到模型中。当然,您可以使用plan ajax调用,但是使用主干网又有什么意义呢?