Odoo 10 - 扩展销售点模块的Javascript

Pab*_*yes 3 point-of-sale openerp odoo-10

我想从point_of_sale模块覆盖ReceiptScreen方法.

var ReceiptScreenWidget = ScreenWidget.extend...

gui.define_screen({name:'receipt', widget: ReceiptScreenWidget});
Run Code Online (Sandbox Code Playgroud)

为了做到这一点,我已经创建了自己的模块,但我不知道更改ReceiptScreenWidget.print()函数后面的步骤.

这是screens.js,它包含我想要覆盖的Widget.Function.(搜索:ReceiptScreenWidget)

我试图按照这个例子,但代码来自Odoo 8或9,所以我无法使它工作.

*Odoo版本:10

Cha*_*iki 5

JS

odoo.define('your_module_name.filename', function (require) {
"use strict";

var gui = require('point_of_sale.gui');
var screens = require('point_of_sale.screens');
var core = require('web.core');
var QWeb = core.qweb;
var _t = core._t;

screens.ReceiptScreenWidget.include({
    print: function() {
    // Your code
    },
});

});
Run Code Online (Sandbox Code Playgroud)

XML添加JS

<?xml version="1.0" encoding="utf-8"?>
<odoo>
        <template id="assets" inherit_id="point_of_sale.assets">
          <xpath expr="." position="inside">
              <script type="text/javascript" src="/your_module_name/static/js/filename.js"></script>
          </xpath>
        </template>
</odoo>
Run Code Online (Sandbox Code Playgroud)

在__manifest__.py中添加该xml

{
...
...
'data': [
        ...
        'views/above_xml_filename.xml',
    ],
....
}
Run Code Online (Sandbox Code Playgroud)