这就是我试图在线程中重写函数的方式,通常,我只是将display_order: ORDER.ASC
更改为display_order: ORDER.DESC
。基本上,我的目标只是更改铁饼中消息的顺序。
但是我的代码无效,但是我在日志中收到一条消息,指出它正在运行
<template id="config.assets_backend" name="config assets" inherit_id="web.assets_backend" >
<xpath expr="." position="inside" >
<script type="text/javascript" src="/config/static/src/js/thread.js" ></script>
</xpath>
</template>
odoo.define('config.thread', function (require) {
"use strict";
var Thread = require('mail.ChatThread');
var ORDER = {
ASC: 1,
DESC: -1,
};
console.log("ChatThread: ", Thread);
Thread.include({
init: function (parent, options) {
this._super.apply(this, arguments);
this.options = _.defaults(options || {}, {
display_order: ORDER.DESC,
});
}
});
});
赏金更新:
当我尝试在参数this._super.apply(this, arguments);
的此行调试时,我收到display_order:1,所以我猜这是
this.options = _.defaults(options || {}, {
display_order: ORDER.DESC,
});
无法正常工作。所以有什么建议。
答案 0 :(得分:1)
这是我的问题的解决方案:
odoo.define('modulename.ChatThread',
function (require) {
"use strict";
var core = require('web.core');
var MailThread = require('mail.ChatThread');
var Thread = MailThread.include({
className: 'o_mail_thread',
init: function (parent, options) {
this._super.apply(this, arguments);
this.options.display_order = -1;
},
});
});