web-dev-qa-db-ja.com

デノの代替のajv(json-schema validator)はありますか?

私はadenovのajvのようなjsonスキーマバリデーターを探しています。疑問はありますか?

3
Eric Miao

代わりの方法は必要ありません。ajvを使用できます。

Ajvブラウザにバンドルを提供しますhttps://cdnjs.cloudflare.com/ajax/libs/ajv/6.12.2/ajv.min.js =

あなたがする必要があるのはそれをダウンロードしてあなたのプロジェクトに保存してそして追加することです:export default Ajvファイルの下部にあります。

ajv.js

/* ajv 6.12.2: Another JSON Schema Validator */
!function(e){if("object"==typeof exports&&"undefined"!=typeof module) /*....... */
//# sourceMappingURL=ajv.min.js.map

export default Ajv;

index.js

import Ajv from './ajv.js'

const ajv = new Ajv({allErrors: true});

const schema = {
  "properties": {
    "foo": { "type": "string" },
    "bar": { "type": "number", "maximum": 3 }
  }
};

function test(data) {
  const valid = validate(data);
  if (valid) console.log('Valid!');
  else console.log('Invalid: ' + ajv.errorsText(validate.errors));
}


const validate = ajv.compile(schema);

test({"foo": "abc", "bar": 2});
test({"foo": 2, "bar": 4});

DenoはJavaScriptランタイムであることを忘れないでください。プレーンJavaScriptを使用するすべてのコードは、ほとんど変更せずに使用できます(この場合)。ただexport default Ajv

1

今まで、ajnoのようなスキーマバリデーターはDenoでは使用できません。ただし、スキーマ検証のためにvalue_schemaを試すことができます。 Node.jsDeno の両方のバージョンがあります。

0