覆盖 JS 消息

Override JS message in

这就是我尝试在线程中覆盖函数的方式,一般来说,我只是将 display_order: ORDER.ASC 更改为 display_order: ORDER.DESC。基本上,我的目标只是更改 Discus 中消息的顺序。 但是我的代码没有效果,但是我在日志中收到一条消息,它是 运行

  <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,
                });

工作不正常。所以有什么建议。

这是我的问题的解决方案:

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;
    },
    });
});