Javascript 如何在web客户端上扩展基本字段小部件
我正在尝试在web客户端上自定义基本字段对象。这是我的密码:Javascript 如何在web客户端上扩展基本字段小部件,javascript,web,openerp,Javascript,Web,Openerp,我正在尝试在web客户端上自定义基本字段对象。这是我的密码: openerp.web_mymodule = function(openerp) { openerp.web.form.Field = openerp.web.form.Field.extend({ init: function(view, node) { console.log('mine'); this._super(view, node);
openerp.web_mymodule = function(openerp) {
openerp.web.form.Field = openerp.web.form.Field.extend({
init: function(view, node) {
console.log('mine');
this._super(view, node);
}
});
[...]
}
但它不起作用。AFAIK这应该和以下代码(在同一文件中)一样工作:
[...]
openerp.web.form.FieldChar = openerp.web.form.FieldChar.extend({
init: function (view, node) {
this._super(view, node);
console.log('mine')
}
});
我能看到的唯一区别是,包括FieldChar在内的所有小部件都在view\u form.js
中注册,而Field
则不是
我是不是错过了这背后的“黑魔法”?您是否尝试使用include而不是extend
openerp.web_mymodule = function(openerp) {
openerp.web.form.Field.include({
init: function(view, node) {
console.log('mine');
this._super(view, node);
}
});
[...]
}
xmo在这里写了一个解释:我只是在尝试同样的方法,而且确实有效:)我只是重新阅读了xmo给我的答案(!!),但我仍然觉得有点奇怪,因为我在字段obj的“真实实例”上操作,比如FieldChar和类似的作品:反正是tnx:)