简体   繁体   中英

extend Widget's init method in odoo 13

I'm trying to extend the widget's init method to make a simple console.log when the page is loaded, but it doesn't work, what can be a correct way to do this?

odoo.define('lliege_pdt_main.pdt_maps', function (require) {
    var Widget = require('web.Widget');

    var pdt_maps = Widget.extend({
        init: function (parent) {
            console.log("test");
            this._super(parent);
        },
    });
    return pdt_maps;
});

In your case you do not want to inherit the widget in the classical sense. You want to modify the parent itself . This can be done with include instead of extend :

var pdt_maps = Widget.include({
        init: function (parent) {
            console.log("test");
            this._super(parent);
        },
});

Don't forget to debug in assets debug (gorilla) mode. Here is the official documentation on patching a JS class like this .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM