ExtJS将自定义验证移动到外部文件
ExtJS moving custom validations to external files
我的一些验证在不同的视图中重复。我想把它们移到外部文件中,以便于重用。举个例子,我希望能够使用这样的东西:
Ext.apply(Ext.form.field.VTypes, Ext.custom.validations.Oib);
而不是像这样对VTypes单例应用验证:
Ext.apply(Ext.form.field.VTypes, {
oib: function(val, field) {
oib = val.toString();
if (oib.length != 11) return false;
var b = parseInt(oib, 10);
if (isNaN(b)) return false;
var a = 10;
for (var i = 0; i < 10; i++) {
a = a + parseInt(oib.substr(i, 1), 10);
a = a % 10;
if (a == 0) a = 10;
a *= 2;
a = a % 11;
}
var control = 11 - a;
if (control == 10) control = 0;
return control == parseInt(oib.substr(10, 1));
},
oibText: 'Wrong oib.',
oibMask: /['d]/i
});
如何做到这一点?
如果将验证添加到singleton Ext.form.field.VTypes
中,它们将可以在任何地方访问。不那么问题出在哪里呢?
我能够用大约这个来做我需要的事情:
将我的文件放入
/ext4/custom
首先定义外部文件的路径。
Ext.Loader.setConfig({
enabled : true,
paths : {
'custom' : '/ext4/custom'
}
});
需要文件
Ext.require([ 'Ext.*', 'custom.validations.Oib' ]);
最后,将验证应用于singleton:
Ext.apply(Ext.form.field.VTypes, Ext.create('custom.validations.Oib'));
相关文章:
- 将外部文件与AngularJs集成
- 动态地包含来自外部文件PHP的JavaScript
- LeadLander formalyze_init.js Javascript外部文件
- 我的代码在<脚本>标记,但没有'不能在外部文件中工作
- 如何用HTML中的JSON外部文件填充下拉按钮
- 如何在从外部连接时将外部文件包含到node-js项目中
- 访问模块.从外部文件导出
- 无法从 jquery 中的外部文件调用特定内容
- 无法让 javascript 从外部文件工作
- 将变量从服务器上的外部文件加载到 HTML 文档中
- 对 jquery 库 + 外部文件的 HTML 引用
- 如何在 webpack 中包含外部文件
- Highcharts赢得't加载表单外部文件
- 如何在外部文件中创建选择菜单并将其嵌入到html中以显示菜单
- Javascript和CSS,内部HTML与外部文件
- 包括从外部文件到HTML的查询功能(使用Dropbox进行本地测试)
- 使用load()加载外部文件,然后使用fancybox插件进行修改并显示
- 如何在外部文件中存储谷歌地图选项
- 用javascript(不带外部文件)将html加载到另一个html中
- 从外部文件设置tinymce的内容