沧海一幻觉
我想出了一些临时修复方案,但这不是解决方案:好的,基本上我就是这么做的PosBaseWidget.include({ init: function(parent, options) { this._super(parent, options); }, get_order_by_uid: function(uid) { var orders = this.pos.get_order_list(); for (var i = 0; i < orders.length; i++) { if (orders[i].uid === uid) {// this.pos.get_order().token_number=Token; return orders[i]; } } return undefined; }, deleteorder_click_handler: function(event, $el) { var self = this; var order = this.pos.get_order(); if (!order) { return; } else if ( !order.is_empty() ){ this.gui.show_popup('confirm',{ 'title': _t('Destroy Current Order ?'), 'body': _t('You will lose any data associated with the current order'), confirm: function(){ self.pos.delete_current_order(); }, }); } else { this.pos.delete_current_order(); } }, renderElement: function(){ var self = this; this._super(); this.$('.order-button.select-order').click(function(event){ }); this.$('.neworder-button').click(function(event){ self.neworder_click_handler(event,$(this)); }); this.$('.deleteorder-button').click(function(event){ if(Token == null ) { self.deleteorder_click_handler(event,$(this)); } else { self.neworder_click_handler(event,$(this)); this.pos.get_order().order_progress="In progress"; } }); }});where var PosBaseWidget = require('point_of_sale.BaseWidget'); var Token = Math.floor((Math.random() * 1000) + 1000);令牌实际上在这里帮助为当前会话中的每个订单分配随机唯一编号,这只是对我的问题的临时解决方案,并且还产生了一些新问题*例如“新订单按钮[+签名按钮]一键创建两个订单”。*作为 odoo 的新手,对其 javascript 来说是陌生的(不是常规的 javascript )我每天都在开发模块来改进这一点。在找到对我的问题更持久的解决方案后将进行更新。非常感谢建议、提示、意见和建议。