当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript yup.addMethod函数代码示例

本文整理汇总了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)
开发者ID:3drepo,项目名称:3drepo.io,代码行数:31,代码来源:validation.ts

示例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({
开发者ID:j-f1,项目名称:forked-DefinitelyTyped,代码行数:31,代码来源:yup-tests.ts

示例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({
开发者ID:mattlewis92,项目名称:DefinitelyTyped,代码行数:31,代码来源:yup-tests.ts


注:本文中的yup.addMethod函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。