0

我试图在表单中显示不同的消息。我在学习本文档时从 json 制作表单 https://github.com/Textalk/angular-schema-form/blob/master/docs/index.md#validation-messages

Plunker http://plnkr.co/edit/ZNJO3x3IqajjdMNStJMF?p=preview

当我像文档中给出的那样写这个时,我无法查看页面以及收到错误?

 validationMessage: {
    tv4.errorCodes.STRING_LENGTH_SHORT: "Address is too short, man.",
    "default": "Just write a proper address, will you?"   //Special catch all error message
  },

当用户有效验证时,我需要显示不同的味精吗?

4

1 回答 1

0

问题是由于tv4.errorCodes.STRING_LENGTH_SHORT某种原因,您的代码中不存在该常量。您始终可以使用原始值或使用它们制作角度常数并像这样使用它:

"email": {
    "title": "Email",
    "type": "string",
    "minLength": 2,
    "pattern": "^\\S+@\\S+$",
    validationMessage: {
        200: "Address is too short, man.",
        "default": "Just write a proper address, will you?" //Special catch all error message
    },
    "description": "Email will be used for evil.",
    required: true
  },

我刚刚添加了 minLength 要求,因此它实际上可以得到验证。

可以查看官方包上的错误码值:https ://github.com/geraintluff/tv4/blob/master/tv4.js

或者简单地参考这些:

var ErrorCodes = {
    INVALID_TYPE: 0,
    ENUM_MISMATCH: 1,
    ANY_OF_MISSING: 10,
    ONE_OF_MISSING: 11,
    ONE_OF_MULTIPLE: 12,
    NOT_PASSED: 13,
    // Numeric errors
    NUMBER_MULTIPLE_OF: 100,
    NUMBER_MINIMUM: 101,
    NUMBER_MINIMUM_EXCLUSIVE: 102,
    NUMBER_MAXIMUM: 103,
    NUMBER_MAXIMUM_EXCLUSIVE: 104,
    // String errors
    STRING_LENGTH_SHORT: 200,
    STRING_LENGTH_LONG: 201,
    STRING_PATTERN: 202,
    // Object errors
    OBJECT_PROPERTIES_MINIMUM: 300,
    OBJECT_PROPERTIES_MAXIMUM: 301,
    OBJECT_REQUIRED: 302,
    OBJECT_ADDITIONAL_PROPERTIES: 303,
    OBJECT_DEPENDENCY_KEY: 304,
    // Array errors
    ARRAY_LENGTH_SHORT: 400,
    ARRAY_LENGTH_LONG: 401,
    ARRAY_UNIQUE: 402,
    ARRAY_ADDITIONAL_ITEMS: 403,
    // Custom/user-defined errors
    FORMAT_CUSTOM: 500,
    KEYWORD_CUSTOM: 501,
    // Schema structure
    CIRCULAR_REFERENCE: 600,
    // Non-standard validation options
    UNKNOWN_PROPERTY: 1000
};

请注意,该STRING_LENGTH_SHORT值为 200。

这是一个工作 plunkr:http ://plnkr.co/edit/4EwGzl1LlseNYOX802S1?p=preview

如果您想了解有关角度常数/值的更多信息,请查看: http: //lostechies.com/gabrielschenker/2014/01/14/angularjspart-9-values-and-constants/

将这些值放在一个常数上,以便它们可以轻松重用,这对您来说是一个很好的练习。

希望有帮助

于 2014-08-16T00:38:21.783 回答