全局 Angular-formly 验证
Global Angular-formly validations
我在我的应用程序的一堆不同的 HTML 页面中使用 angular formly-forms。我以验证为例:
{
className: 'col-xs-5',
key: 'poc',
type: 'input',
templateOptions: {
type: 'text',
required: true,
label: 'Point of Contact',
maxlength: 15,
placeholder: "Enter Point of Contact's username"
},
validators:{
username:{
expression: function(viewValue, modelValue) {
var value = modelValue || viewValue;
return !value || /^\d*[a-zA-Z][a-zA-Z\d]*$/.test(value);
},
message: '$viewValue + " is not a valid username"'
},
},
我希望在我的其他 HTML 表单上也可以使用此验证,而不必重复验证器函数。我读过我可以创建一个自定义用户名类型,它可能内置了这个验证器逻辑和消息?我只是再次不确定如何使它全球化。
在我的 app.config.js 中,我确实有一些全局消息可以用来显示基本 angular-formly 错误的错误消息,但不确定如何为我的自定义错误显示错误消息
formlyValidationMessages.addStringMessage('required', 'This field is required');
formlyValidationMessages.addStringMessage('maxlength', 'Input is too long!');
我找不到成功完成此操作的好例子,非常希望能提供一些帮助!
对于将来寻找如何执行此操作的任何人。看看这个视频中的例子。
https://egghead.io/lessons/angularjs-angular-formly-default-options
关于我概述的示例的操作方法。
> angular.module('cim').run(function(formlyConfig,
> formlyValidationMessages) { formlyConfig.setType({
> name: 'username',
> defaultOptions: {
> templateOptions: {
> type: 'text',
> required: true,
> label: 'Point of Contact',
> maxlength: 15,
> placeholder: "Enter Point of Contact's username",
> },
> validators:{
> username:{
> expression: function(viewValue, modelValue) {
> var value = modelValue || viewValue;
> return !value || /^\d*[a-zA-Z][a-zA-Z\d]*$/.test(value);
> },
> message: '$viewValue + " is not a valid username"'
> },
> },
> }
我在我的应用程序的一堆不同的 HTML 页面中使用 angular formly-forms。我以验证为例:
{
className: 'col-xs-5',
key: 'poc',
type: 'input',
templateOptions: {
type: 'text',
required: true,
label: 'Point of Contact',
maxlength: 15,
placeholder: "Enter Point of Contact's username"
},
validators:{
username:{
expression: function(viewValue, modelValue) {
var value = modelValue || viewValue;
return !value || /^\d*[a-zA-Z][a-zA-Z\d]*$/.test(value);
},
message: '$viewValue + " is not a valid username"'
},
},
在我的 app.config.js 中,我确实有一些全局消息可以用来显示基本 angular-formly 错误的错误消息,但不确定如何为我的自定义错误显示错误消息
formlyValidationMessages.addStringMessage('required', 'This field is required');
formlyValidationMessages.addStringMessage('maxlength', 'Input is too long!');
我找不到成功完成此操作的好例子,非常希望能提供一些帮助!
对于将来寻找如何执行此操作的任何人。看看这个视频中的例子。 https://egghead.io/lessons/angularjs-angular-formly-default-options
关于我概述的示例的操作方法。
> angular.module('cim').run(function(formlyConfig,
> formlyValidationMessages) { formlyConfig.setType({
> name: 'username',
> defaultOptions: {
> templateOptions: {
> type: 'text',
> required: true,
> label: 'Point of Contact',
> maxlength: 15,
> placeholder: "Enter Point of Contact's username",
> },
> validators:{
> username:{
> expression: function(viewValue, modelValue) {
> var value = modelValue || viewValue;
> return !value || /^\d*[a-zA-Z][a-zA-Z\d]*$/.test(value);
> },
> message: '$viewValue + " is not a valid username"'
> },
> },
> }