gpt4 book ai didi

函数内变量的 Javascript 继承 (OpenERP)

转载 作者:可可西里 更新时间:2023-11-01 02:44:03 24 4
gpt4 key购买 nike

基本上,我试图通过扩展函数来覆盖它。我有以下基本(简化)代码:

openerp.point_of_sale = function(db) {

var Order = Backbone.Model.extend({

exportAsJSON: function() {
return {'bigobject'}
}
})
}

然后,我正在编写自己的 .js,我想在其中继承和覆盖 exportAsJSON 函数,但我不确定如何.extend 它。这是我的错误做法:

openerp.my_module = function(db) {

db.point_of_sale.Order = db.point_of_sale.Order.extend({

exportAsJSON: function() {

var order_data = this._super();
//... add more stuff on object
return order_data;
}
})
}

正确的做法是什么?

我希望我提供了足够的信息来回答(顺便说一句,我正在研究 OpenERP)。任何帮助将不胜感激。

编辑:更具体地说,错误似乎出在扩展本身:

db.point_of_sale.Order = db.point_of_sale.Order.extend({

...即使我在我的 exportAsJSON 函数中放置一个简单的 return 0; ,页面也不会加载并且我在浏览器控制台中收到以下错误:

"Cannot call method 'extend' of undefined" 

最佳答案

我想你想要像 SuperClass.prototype.method.call(this) 这样的东西:

openerp.my_module = function(db) {

db.point_of_sale.Order = db.point_of_sale.Order.extend({

exportAsJSON: function() {

var order_data = db.point_of_sale.Order.prototype.exportAsJSON.call(this);
//... add more stuff on object
return order_data;
}
})
}

关于函数内变量的 Javascript 继承 (OpenERP),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13145825/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com