luoyifan 3 лет назад
Родитель
Сommit
5fe8cd8669
2 измененных файлов с 35 добавлено и 14 удалено
  1. 34 13
      dist/yvan-ext.js
  2. 1 1
      dist/yvan-ext.js.map

+ 34 - 13
dist/yvan-ext.js

@@ -62788,6 +62788,13 @@ define(['exports'], function (exports) { 'use strict';
             (_b = scope.refs[gridRefName]) === null || _b === void 0 ? void 0 : _b.reload();
         }
     }
+    var keydown_fun_item = lodash.debounce(function (sender, event, eOpts) {
+        if ([10, 13, 20, 40].includes(event.keyCode)) {
+            // 获取读码器读取的内容,最好不要从 viewModel 中取值,而是从 sender.rawValue 中取值
+            var value = lodash.trim(sender.rawValue);
+            raiseClick(eOpts.handle);
+        }
+    }, 150);
     var SystemEventFu = /** @class */ (function () {
         function SystemEventFu() {
         }
@@ -62798,16 +62805,28 @@ define(['exports'], function (exports) { 'use strict';
                 }
                 config.listeners.afterrender = function (sender) {
                     var scope = lookupScope(sender);
-                    $(sender.el.dom).on('keydown', function (e) {
-                        var xtype = Ext.fly(e.target).component.xtype;
-                        if (xtype === 'textfield' && e.keyCode === 13) {
-                            Ext.defer(function () {
-                                raiseClick(scope.refs[btnReferenceName]);
-                            });
-                            e.preventDefault();
-                            e.stopPropagation();
-                            return false;
+                    // $(sender.el.dom).on('keydown', (e) => {
+                    //     const xtype = Ext.fly(e.target).component.xtype
+                    //     if (xtype === 'textfield' && e.keyCode === 13) {
+                    //         Ext.defer(() => {
+                    //             raiseClick(scope.refs[btnReferenceName])
+                    //         })
+                    //         e.preventDefault()
+                    //         e.stopPropagation()
+                    //         return false
+                    //     }
+                    // })
+                    $(sender.el.dom).on('keyup', function (e) {
+                        var tt = Ext.fly(e.target).component;
+                        var xtype = tt === null || tt === void 0 ? void 0 : tt.xtype;
+                        if ((xtype !== 'textfield' && xtype !== 'numberfield') ||
+                            ![10, 13, 20, 40].includes(e.keyCode)) {
+                            return;
                         }
+                        e.preventDefault();
+                        e.stopPropagation();
+                        keydown_fun_item(tt, e, { handle: scope.refs[btnReferenceName] });
+                        return;
                     });
                 };
             };
@@ -63388,7 +63407,6 @@ define(['exports'], function (exports) { 'use strict';
     function getGridEditRows(grid) {
         return grid.getGridEditRows();
     }
-    //# sourceMappingURL=systemLib.js.map
 
     var SystemLib = /*#__PURE__*/Object.freeze({
         __proto__: null,
@@ -130245,6 +130263,7 @@ define(['exports'], function (exports) { 'use strict';
         };
         return ReportScope;
     }(Scope));
+    //# sourceMappingURL=Report.js.map
 
     function initTextfield () {
         var cc = Ext.form.field.Text.prototype.constructor;
@@ -130426,10 +130445,12 @@ define(['exports'], function (exports) { 'use strict';
                 if ([10, 13, 20, 40].includes(event.keyCode)) {
                     // 获取读码器读取的内容,最好不要从 viewModel 中取值,而是从 sender.rawValue 中取值
                     var value = lodash.trim(sender.rawValue);
-                    var r = that.fireEvent('scancode', that, value);
-                    if (r) {
+                    var r = that.fireEvent('scancode', that, value, event);
+                    if (r === 'OK') {
                         // 停止事件的默认处理程序,停止事件的冒泡
-                        event.stopEvent();
+                        // event.stopEvent();
+                        event.preventDefault();
+                        event.stopPropagation();
                     }
                 }
             }, 100)

Разница между файлами не показана из-за своего большого размера
+ 1 - 1
dist/yvan-ext.js.map