Как убрать эту неожиданную ошибку токена в угловых js?
Я пытаюсь отобразить другое сообщение в форме. Я создаю форму из json при изучении этой документации https://github.com/Textalk/angular-schema-form/blob/master/docs/index.md#validation-messages
Плункер 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
},
Мне нужно отобразить разные сообщения, когда пользователь подтвердит правильность?
1 ответ
Проблема в том, что постоянная 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
Вот рабочий планер: http://plnkr.co/edit/4EwGzl1LlseNYOX802S1?p=preview
Если вы хотите узнать больше об угловых константах / значениях, проверьте это: http://lostechies.com/gabrielschenker/2014/01/14/angularjspart-9-values-and-constants/
Помещение этих значений в константу, чтобы их можно было легко использовать повторно, станет для вас хорошим упражнением.
надеюсь, это поможет