2016-06-28 6 views
1

я написал пользовательские валидации, как показано нижеСделать заказ валидации в ExtJS в качестве компонентов

Ext.apply(Ext.form.field.VTypes, { 
    valInt: function(v) { 
     return /^(\d+(,\d+)*)?$/.test(v); 
    }, 
    valIntText: 'Must be in the form #,#', 
    valIntMask: /[\d\,]/i 
}); 

Он работает. Но я хочу сделать все такие выборочные проверки в одном файле, а затем загрузить или загрузить. Как мне это сделать?

я могу сделать, как показано ниже в app.js

Ext.onReady(function() {  
    Ext.apply(Ext.form.field.VTypes, { 
     valInt: function(v) { 
      return /^(\d+(,\d+)*)?$/.test(v); 
     }, 
     valIntText: 'Must be in the form #,#', 
     valIntMask: /[\d\,]/i 
    }); 
}); 

Но тогда app.js файл будет большой после подтвержедний.

ответ

1

Согласно documentation вы можете создать переопределение, как:

Ext.define('Override.form.field.VTypes', { 
    override: 'Ext.form.field.VTypes', 

    valInt: function(v) { 
     return /^(\d+(,\d+)*)?$/.test(v); 
    }, 

    valIntText: 'Must be in the form #,#', 

    valIntMask: /[\d\,]/i 
}); 

В вашей app.json есть overrides ключ, который объявляет переопределения каталогов, это выглядит следующим образом:

/** 
    * Comma-separated string with the paths of directories or files to search. Any classes 
    * declared in these locations will be automatically required and included in the build. 
    * If any file defines an Ext JS override (using Ext.define with an "override" property), 
    * that override will in fact only be included in the build if the target class specified 
    * in the "override" property is also included. 
    */ 
    "overrides": [ 
    "overrides", 
    "${toolkit.name}/overrides" 
    ], 
+0

Я создал для этого другой файл и добавил код выше. Но когда я пытаюсь использовать как vtype: «valInt» в моей области, он говорит, как Uncaught TypeError: vtypes [vtype] не является функцией – Hacker

+0

Как сделать этот файл/компонент доступным? – Hacker

+0

Вы используете 'Sencha CMD', он должен забирать файлы из папки' override'. –

 Смежные вопросы

  • Нет связанных вопросов^_^