我在我的App上的一堆不同的HTML页面中使用了角度形式表单。我使用验证作为例子:
{
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中,我确实有一些全局消息可以显示基本角度形式错误的错误消息,但不知道如何让它为我的自定义错误做到这一点
formlyValidationMessages.addStringMessage('required', 'This field is required');
formlyValidationMessages.addStringMessage('maxlength', 'Input is too long!');
我找不到一个成功做到这一点的人的好例子,并会极大地帮助你!
答案 0 :(得分:2)
对于那些希望将来如何做到这一点的人。请看一下此视频中的示例。 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"'
> },
> },
> }