JavaScript-OpenERP: การเรียก _super() บนพาเรนต์ของพาเรนต์

ฉันต้องแทนที่ฟังก์ชัน JavaScript ใน OpenERP 7 เพื่อปิดการใช้งานโค้ดบางตัวที่ฉันไม่ต้องการ (เพื่อซ่อนปุ่ม "พิมพ์") น่าเสียดายที่ฟังก์ชันนี้เรียกใช้ _super ในคลาสพาเรนต์ ดังนั้นฉันจึงต้องเรียกมันด้วย แต่ไม่ได้เรียกใช้ฟังก์ชันที่ฉันพยายามจะทดแทน ฉันจะเรียก _super บนพาเรนต์ของคลาสพาเรนต์ได้อย่างไร ทั้งextend()และinclude()ให้ผลลัพธ์เดียวกันในกรณีนี้

นี่คือรหัสที่สมบูรณ์ของฉัน:

openerp.pos_fiscal_printer = function(instance) {
    var module = instance.point_of_sale;
    var _t = instance.web._t;


    module.ReceiptScreenWidget.include({
        show: function(){
            //this._super();

            var self = this;

            this.add_action_button({
                label: _t('Next Order'),
                icon: '/point_of_sale/static/src/img/icons/png48/go-next.png',
                click: function() { self.finishOrder(); },
            });
        },
    });
}

person Andrei    schedule 04.07.2013    source แหล่งที่มา


คำตอบ (1)


ให้ฟังก์ชัน show() ของคุณซ่อน "ปุ่มพิมพ์" ผ่าน jquery ดังนั้นคุณจึงไม่ยุ่งกับผู้ปกครองและผู้ปกครองของตรรกะของคลาสผู้ปกครอง (ซึ่งต้องการแสดงปุ่ม)

person user1120753    schedule 04.02.2014