本文整理汇总了TypeScript中yup.addMethod函数的典型用法代码示例。如果您正苦于以下问题:TypeScript addMethod函数的具体用法?TypeScript addMethod怎么用?TypeScript addMethod使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了addMethod函数的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1:
import { getPasswordStrength } from './customValidators';
export const VALIDATIONS_MESSAGES = {
REQUIRED: 'This field is required',
TOO_SHORT_STRING: 'Must be at least ${min} characters',
TOO_LONG_STRING: 'Must be at most ${max} characters',
NOT_ALPHANUMERIC: 'Must use alphanumeric characters',
DECIMAL: 'Must be a decimal number or integer',
INTEGER: 'Must be an integer',
USERNAME_CHARS: 'Must use only letters, numbers, hypens or underscores',
NOT_NUMBER: 'Must be a number',
MUST_BE_GREATER: 'Must be greater than or equal to ${min}',
MUST_BE_LOWER: 'Must be lower than or equal to ${max}'
};
Yup.addMethod(Yup.string, 'differentThan', differentThan );
Yup.addMethod(Yup.string, 'equalTo', equalTo);
Yup.addMethod(Yup.string, 'strength', strength );
/*
Validation schemas
*/
export const schema = {
firstName: Yup.string()
.min(2, VALIDATIONS_MESSAGES.TOO_SHORT_STRING)
.max(50, VALIDATIONS_MESSAGES.TOO_LONG_STRING)
.required(VALIDATIONS_MESSAGES.REQUIRED),
lastName: Yup.string().ensure()
.min(2, VALIDATIONS_MESSAGES.TOO_SHORT_STRING)
.max(50, VALIDATIONS_MESSAGES.TOO_LONG_STRING)
示例2: reach
} from "yup";
// reach function
let schema = yup.object().shape({
nested: yup.object().shape({
arr: yup.array().of(yup.object().shape({ num: yup.number().max(4) }))
})
});
reach(schema, "nested.arr.num");
reach(schema, "nested.arr[].num");
// addMethod function
yup.addMethod<NumberSchema>(yup.number, "minimum", function(
this,
minValue: number,
message: string
) {
return this.min(minValue, message);
});
yup.addMethod(yup.date, "newMethod", function(
this: yup.DateSchema,
date: Date,
message?: string
) {
return this.max(date, message);
});
// ref function
schema = yup.object().shape({
baz: yup.ref("foo.bar"),
foo: yup.object().shape({
示例3: reach
import { reach, date, Schema, ObjectSchema, ValidationError, MixedSchema, SchemaDescription, TestOptions, ValidateOptions } from 'yup';
// reach function
let schema = yup.object().shape({
nested: yup.object().shape({
arr: yup.array().of(
yup.object().shape({ num: yup.number().max(4) })
)
})
});
reach(schema, 'nested.arr.num');
reach(schema, 'nested.arr[].num');
// addMethod function
yup.addMethod(yup.date(), 'format', function(this: Schema) {
return this.clone();
});
// ref function
schema = yup.object().shape({
baz: yup.ref('foo.bar'),
foo: yup.object().shape({
bar: yup.string()
}),
x: yup.ref('$x')
});
schema.cast({ foo: { bar: 'boom' } }, { context: { x: 5 } });
// lazy function
const node: ObjectSchema = yup.object().shape({