<img align="right" alt="Ajv logo" width="160" src="https://ajv.js.org/images/ajv_logo.png">
# Ajv: Another JSON Schema Validator
The fastest JSON Schema validator for Node.js and browser. Supports draft-04/06/07.
[![Build Status](https://travis-ci.org/ajv-validator/ajv.svg?branch=master)](https://travis-ci.org/ajv-validator/ajv)
[![npm](https://img.shields.io/npm/v/ajv.svg)](https://www.npmjs.com/package/ajv)
[![npm (beta)](https://img.shields.io/npm/v/ajv/beta)](https://www.npmjs.com/package/ajv/v/7.0.0-beta.0)
[![npm downloads](https://img.shields.io/npm/dm/ajv.svg)](https://www.npmjs.com/package/ajv)
[![Coverage Status](https://coveralls.io/repos/github/ajv-validator/ajv/badge.svg?branch=master)](https://coveralls.io/github/ajv-validator/ajv?branch=master)
[![Gitter](https://img.shields.io/gitter/room/ajv-validator/ajv.svg)](https://gitter.im/ajv-validator/ajv)
[![GitHub Sponsors](https://img.shields.io/badge/$-sponsors-brightgreen)](https://github.com/sponsors/epoberezkin)
## Ajv v7 beta is released
[Ajv version 7.0.0-beta.0](https://github.com/ajv-validator/ajv/tree/v7-beta) is released with these changes:
- to reduce the mistakes in JSON schemas and unexpected validation results, [strict mode](./docs/strict-mode.md) is added - it prohibits ignored or ambiguous JSON Schema elements.
- to make code injection from untrusted schemas impossible, [code generation](./docs/codegen.md) is fully re-written to be safe.
- to simplify Ajv extensions, the new keyword API that is used by pre-defined keywords is available to user-defined keywords - it is much easier to define any keywords now, especially with subschemas.
- schemas are compiled to ES6 code (ES5 code generation is supported with an option).
- to improve reliability and maintainability the code is migrated to TypeScript.
**Please note**:
- the support for JSON-Schema draft-04 is removed - if you have schemas using "id" attributes you have to replace them with "\$id" (or continue using version 6 that will be supported until 02/28/2021).
- all formats are separated to ajv-formats package - they have to be explicitely added if you use them.
See [release notes](https://github.com/ajv-validator/ajv/releases/tag/v7.0.0-beta.0) for the details.
To install the new version:
```bash
npm install ajv@beta
```
See [Getting started with v7](https://github.com/ajv-validator/ajv/tree/v7-beta#usage) for code example.
## Mozilla MOSS grant and OpenJS Foundation
[<img src="https://www.poberezkin.com/images/mozilla.png" width="240" height="68">](https://www.mozilla.org/en-US/moss/) [<img src="https://www.poberezkin.com/images/openjs.png" width="220" height="68">](https://openjsf.org/blog/2020/08/14/ajv-joins-openjs-foundation-as-an-incubation-project/)
Ajv has been awarded a grant from Mozilla’s [Open Source Support (MOSS) program](https://www.mozilla.org/en-US/moss/) in the “Foundational Technology” track! It will sponsor the development of Ajv support of [JSON Schema version 2019-09](https://tools.ietf.org/html/draft-handrews-json-schema-02) and of [JSON Type Definition](https://tools.ietf.org/html/draft-ucarion-json-type-definition-04).
Ajv also joined [OpenJS Foundation](https://openjsf.org/) – having this support will help ensure the longevity and stability of Ajv for all its users.
This [blog post](https://www.poberezkin.com/posts/2020-08-14-ajv-json-validator-mozilla-open-source-grant-openjs-foundation.html) has more details.
I am looking for the long term maintainers of Ajv – working with [ReadySet](https://www.thereadyset.co/), also sponsored by Mozilla, to establish clear guidelines for the role of a "maintainer" and the contribution standards, and to encourage a wider, more inclusive, contribution from the community.
## Please [sponsor Ajv development](https://github.com/sponsors/epoberezkin)
Since I asked to support Ajv development 40 people and 6 organizations contributed via GitHub and OpenCollective - this support helped receiving the MOSS grant!
Your continuing support is very important - the funds will be used to develop and maintain Ajv once the next major version is released.
Please sponsor Ajv via:
- [GitHub sponsors page](https://github.com/sponsors/epoberezkin) (GitHub will match it)
- [Ajv Open Collective️](https://opencollective.com/ajv)
Thank you.
#### Open Collective sponsors
<a href="https://opencollective.com/ajv"><img src="https://opencollective.com/ajv/individuals.svg?width=890"></a>
<a href="https://opencollective.com/ajv/organization/0/website"><img src="https://opencollective.com/ajv/organization/0/avatar.svg"></a>
<a href="https://opencollective.com/ajv/organization/1/website"><img src="https://opencollective.com/ajv/organization/1/avatar.svg"></a>
<a href="https://opencollective.com/ajv/organization/2/website"><img src="https://opencollective.com/ajv/organization/2/avatar.svg"></a>
<a href="https://opencollective.com/ajv/organization/3/website"><img src="https://opencollective.com/ajv/organization/3/avatar.svg"></a>
<a href="https://opencollective.com/ajv/organization/4/website"><img src="https://opencollective.com/ajv/organization/4/avatar.svg"></a>
<a href="https://opencollective.com/ajv/organization/5/website"><img src="https://opencollective.com/ajv/organization/5/avatar.svg"></a>
<a href="https://opencollective.com/ajv/organization/6/website"><img src="https://opencollective.com/ajv/organization/6/avatar.svg"></a>
<a href="https://opencollective.com/ajv/organization/7/website"><img src="https://opencollective.com/ajv/organization/7/avatar.svg"></a>
<a href="https://opencollective.com/ajv/organization/8/website"><img src="https://opencollective.com/ajv/organization/8/avatar.svg"></a>
<a href="https://opencollective.com/ajv/organization/9/website"><img src="https://opencollective.com/ajv/organization/9/avatar.svg"></a>
## Using version 6
[JSON Schema draft-07](http://json-schema.org/latest/json-schema-validation.html) is published.
[Ajv version 6.0.0](https://github.com/ajv-validator/ajv/releases/tag/v6.0.0) that supports draft-07 is released. It may require either migrating your schemas or updating your code (to continue using draft-04 and v5 schemas, draft-06 schemas will be supported without changes).
__Please note__: To use Ajv with draft-06 schemas you need to explicitly add the meta-schema to the validator instance:
```javascript
ajv.addMetaSchema(require('ajv/lib/refs/json-schema-draft-06.json'));
```
To use Ajv with draft-04 schemas in addition to explicitly adding meta-schema you also need to use option schemaId:
```javascript
var ajv = new Ajv({schemaId: 'id'});
// If you want to use both draft-04 and draft-06/07 schemas:
// var ajv = new Ajv({schemaId: 'auto'});
ajv.addMetaSchema(require('ajv/lib/refs/json-schema-draft-04.json'));
```
## Contents
- [Performance](#performance)
- [Features](#features)
- [Getting started](#getting-started)
- [Frequently Asked Questions](https://github.com/ajv-validator/ajv/blob/master/FAQ.md)
- [Using in browser](#using-in-browser)
- [Ajv and Content Security Policies (CSP)](#ajv-and-content-security-policies-csp)
- [Command line interface](#command-line-interface)
- Validation
- [Keywords](#validation-keywords)
- [Annotation keywords](#annotation-keywords)
- [Formats](#formats)
- [Combining schemas with $ref](#ref)
- [$data reference](#data-reference)
- NEW: [$merge and $patch keywords](#merge-and-patch-keywords)
- [Defining custom keywords](#defining-custom-keywords)
- [Asynchronous schema compilation](#asynchronous-schema-compilation)
- [Asynchronous validation](#asynchronous-validation)
- [Security considerations](#security-considerations)
- [Security contact](#security-contact)
- [Untrusted schemas](#untrusted-schemas)
- [Circular references in objects](#circular-references-in-javascript-objects)
- [Trusted schemas](#security-risks-of-trusted-schemas)
- [ReDoS attack](#redos-attack)
- Modifying data during validation
- [Filtering
没有合适的资源?快使用搜索试试~ 我知道了~
使用require.context完成本地图片批量导入
共24235个文件
js:14535个
ts:2032个
md:1849个
需积分: 0 5 下载量 124 浏览量
2022-04-02
20:15:32
上传
评论
收藏 63.02MB ZIP 举报
温馨提示
将我的博客文章(https://blog.csdn.net/IT_interest/article/details/122973985)中的内容用项目实现出来,功能为:使用webpack中的require.context功能,批量导入本地图片,并且可根据需要支持多格式图片导入。项目中与博客文章内容稍有不同,文章中是将导入本地图片功能写在vue的js中,不可复用。而项目中将导入本地图片功能提取到一个js文件中,使项目更合理,更具有复用性。此项目如有不合理或不能使用的情况,大家可以到博客下留言,博主一定会积极修复,希望大家多多支持,感谢!
资源详情
资源评论
资源推荐
收起资源包目录
使用require.context完成本地图片批量导入 (24235个子文件)
05f19391dba84eb4167b3d496bc8b716646fdc 108B
sshpk-conv.1 4KB
he.1 3KB
jsesc.1 3KB
jsesc.1 3KB
sshpk-sign.1 2KB
sshpk-verify.1 2KB
cssesc.1 2KB
10c6a45035b6573151ff6196e4bdea78deb75d 53B
155710ae6a8af0b44f3e16db0f27d2906175b7 205B
2499657c3f875fd393c5afae1e69471c93bf19 53B
2aa6029528aa4886f9e45e102353fa2e6ff248 83B
2f2289480ee7c1ef1963c06ffd067c1f2f5641 117B
36fcfb72584e00488330b560ebcf34a41c64c2 979B
396092dc9b3e3793e68a74b7e92b7604c35f50 338B
3adbc1e527906a4aa59558cd582c20bcd1d738 160B
3d00e306882436ecd1b1cb7fe3d05b6d4061ac 59B
45d249dbed1022508eba7a2ab5f1e05e5a9b94 318KB
544cb1ed15b1cc4cd15e4637020fed7ab862c4 734B
558405fdcc02f12d757acb308e02937a7444f1 82B
5a13962197105f2078d2a224cc57dfa09b4893 383B
629cc57da4f2265aaa2900e81087be706c1805 237B
64355125dc3c458d3a6bfabc748abd45296d9e 290B
78782eee29ce9ac44135cc36bbbbd25e0e3c9c 253B
9aed975ebe79d85f0846a836f178e73e7fa16f 125B
_editorconfig 160B
_editorconfig 121B
_gitignore 670B
a28070de24f2055171ca2e20543881cb7fdf1c 85B
acorn 298B
acorn 298B
acorn 62B
acorn 62B
ansi-html 2KB
ansi-html 334B
LICENSE.APACHE2 586B
openChrome.applescript 2KB
atob 300B
AUTHORS 351B
AUTHORS 217B
AUTHORS 203B
AUTHORS 169B
AUTHORS 152B
AUTHORS 152B
AUTHORS 139B
AUTHORS 106B
.auto-changelog 113B
autoprefixer 540B
autoprefixer 326B
.babelrc 164B
.babelrc 68B
.babelrc 57B
.babelrc 55B
.babelrc 30B
README.md.bak 7KB
benchmark 692B
bf960e214e73e5513e054ac34c331b6d4b1a46 88B
range.bnf 619B
range.bnf 619B
range.bnf 619B
range.bnf 619B
range.bnf 619B
range.bnf 619B
browserslist 306B
LICENSE.BSD 1KB
LICENSE.BSD 1KB
LICENSE.BSD 1KB
LICENSE.BSD 1KB
LICENSE.BSD 1KB
LICENSE.BSD 1KB
ChangeLog 10KB
Changelog 8KB
index.cjs 105KB
index.cjs 41KB
node-ipc.cjs 36KB
index.cjs 10KB
index.cjs 7KB
index.cjs 1KB
nanoid.cjs 1KB
index.browser.cjs 1KB
index.cjs 1KB
index.cjs 993B
index.browser.cjs 983B
index.cjs 499B
index.cjs 120B
LICENSE.closure-compiler 11KB
webpack-dev-server.cmd 349B
webpack-bundle-analyzer.cmd 348B
vue-cli-service.cmd 344B
parser.cmd 338B
ansi-html.cmd 338B
miller-rabin.cmd 334B
autoprefixer.cmd 334B
import-local-fixture.cmd 333B
highlight.cmd 332B
esvalidate.cmd 330B
opener.cmd 329B
prettier.cmd 329B
sshpk-verify.cmd 327B
webpack.cmd 327B
共 24235 条
- 1
- 2
- 3
- 4
- 5
- 6
- 243
一聚风云
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0