{"id":15003638,"url":"https://github.com/caojianping/tsx-validator","last_synced_at":"2026-01-30T01:23:25.779Z","repository":{"id":57281859,"uuid":"206047666","full_name":"caojianping/tsx-validator","owner":"caojianping","description":"TypeScript版本的验证器Validator，提供简单的正则、长度、大小、范围、数字、字符、日期等验证功能，同时支持验证规则的自定义扩展。","archived":false,"fork":false,"pushed_at":"2023-03-30T07:39:19.000Z","size":9,"stargazers_count":11,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-31T04:04:18.578Z","etag":null,"topics":["javascript","jtps-validator","typescript","validate","validation","validator"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/caojianping.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-09-03T10:08:14.000Z","updated_at":"2023-08-25T01:33:01.000Z","dependencies_parsed_at":"2024-09-28T15:00:37.085Z","dependency_job_id":null,"html_url":"https://github.com/caojianping/tsx-validator","commit_stats":null,"previous_names":["caojianping/jpts-validator"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caojianping%2Ftsx-validator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caojianping%2Ftsx-validator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caojianping%2Ftsx-validator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caojianping%2Ftsx-validator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/caojianping","download_url":"https://codeload.github.com/caojianping/tsx-validator/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238895159,"owners_count":19548554,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["javascript","jtps-validator","typescript","validate","validation","validator"],"created_at":"2024-09-24T18:59:38.571Z","updated_at":"2025-10-30T11:30:32.206Z","avatar_url":"https://github.com/caojianping.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tsx-validator\n\nTypeScript 版本的验证器 Validator，提供简单的正则、长度、大小、范围、数字、字符、日期等验证功能，同时支持验证规则的自定义扩展。\n\n## Installing\n\nUsing npm:\n\n```bash\n$ npm install tsx-validator\n```\n\n## Example\n\n```ts\nimport Validator from 'tsx-validator';\n\n// test for validator\nconst key = 'test';\nlet username = '张三',\n  password = '李四',\n  validator = new Validator();\nvalidator.addRule(key, { name: 'account', value: username }, { required: true }, { required: '用户名不可以为空' });\nvalidator.addRule(key, { name: 'password', value: password }, { required: true }, { required: '密码不可以为空' });\n\nlet result = validator.execute(key);\nif (!result.status) {\n  // 验证失败，弹出校验失败数据对象\n  alert(result.data);\n  return;\n}\n```\n\n## API\n\n##### Validator.extendRule(rules: ValidationRuleType, messages: ValidationMessageType): boolean\n\n##### Validator.addRule(key: string, model: ValidationModelType, rules: ValidationRuleType, messages: ValidationMessageType = {}): boolean\n\n##### Validator.addRules(key: string, options: Array\u003cValidationOptionType\u003e): boolean\n\n##### Validator.execute(key: string): ValidationResult\n\n## Rule\n\n```ts\n// 规则列表\n{\n    // 必填规则\n    required: any,\n    // 最小值规则\n    min: any,\n    // 最小值规则（排除num临界值）\n    minExclude: any,\n    // 最大值规则\n    max: any,\n    // 最大值规则（排除num临界值）\n    maxExclude: any,\n    // 值范围规则\n    range: any,\n    // 最小长度规则\n    minLength: any,\n    // 最大长度规则\n    maxLength: any,\n    // 长度范围规则\n    rangeLength: any,\n    // 最小日期规则\n    minDate: any,\n    // 最大日期规则\n    maxDate: any,\n    // 选择规则\n    checked: any,\n    // 相等规则\n    equal: any,\n    //不相等规则\n    unequal: any,\n    // 手机号码规则\n    mobile: any,\n    // 邮箱规则\n    email: any,\n    // 格式化规则\n    format: any\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaojianping%2Ftsx-validator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcaojianping%2Ftsx-validator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaojianping%2Ftsx-validator/lists"}