Javascript 重写JS函数
这是我正在使用的框架中的一个原始函数。它是一个基于Python的框架,带有一点Javascript。由于我对JS知之甚少,我想问一个问题 如何覆盖Javascript 重写JS函数,javascript,Javascript,这是我正在使用的框架中的一个原始函数。它是一个基于Python的框架,带有一点Javascript。由于我对JS知之甚少,我想问一个问题 如何覆盖init:function(父级,选项)part 在这个函数中,我只需要改变一件事。 第57行 display\u order:order.ASC到order.DESC 所以我需要在super中调用这个函数并改变参数 var Thread = Widget.extend({ className: 'o_mail_thread', e
init:function(父级,选项)
part
在这个函数中,我只需要改变一件事。
第57行
display\u order:order.ASC
到order.DESC
所以我需要在super中调用这个函数并改变参数
var Thread = Widget.extend({
className: 'o_mail_thread',
events: {
"click a": "on_click_redirect",
"click img": "on_click_redirect",
"click strong": "on_click_redirect",
"click .o_thread_show_more": "on_click_show_more",
"click .o_thread_message_needaction": function (event) {
var message_id = $(event.currentTarget).data('message-id');
this.trigger("mark_as_read", message_id);
},
"click .o_thread_message_star": function (event) {
var message_id = $(event.currentTarget).data('message-id');
this.trigger("toggle_star_status", message_id);
},
"click .o_thread_message_reply": function (event) {
this.selected_id = $(event.currentTarget).data('message-id');
this.$('.o_thread_message').removeClass('o_thread_selected_message');
this.$('.o_thread_message[data-message-id=' + this.selected_id + ']')
.addClass('o_thread_selected_message');
this.trigger('select_message', this.selected_id);
event.stopPropagation();
},
"click .oe_mail_expand": function (event) {
event.preventDefault();
var $message = $(event.currentTarget).parents('.o_thread_message');
$message.addClass('o_message_expanded');
this.expanded_msg_ids.push($message.data('message-id'));
},
"click .o_thread_message": function (event) {
$(event.currentTarget).toggleClass('o_thread_selected_message');
},
"click": function () {
if (this.selected_id) {
this.unselect();
this.trigger('unselect_message');
}
},
},
init: function (parent, options) {
this._super.apply(this, arguments);
this.options = _.defaults(options || {}, {
display_order: ORDER.ASC,
display_needactions: true,
display_stars: true,
display_document_link: true,
display_avatar: true,
shorten_messages: true,
squash_close_messages: true,
display_reply_icon: false,
});
this.expanded_msg_ids = [];
this.selected_id = null;
},
如果您不能或不想更改源代码,您可以通过
{display\u order:order.DESC}
作为创建此类时的选项参数。它看起来像是init()
采用了options
参数。您应该能够传入该选项,而不是重写该函数。