CodeSampleX

Пример

ajv 8.20.0: Handle Ajv async schema validation where invalid data rejects the Promise with Ajv.ValidationError instead of resolving false

Проверенный пример — npm ajv 8.20.0: Handle Ajv async schema validation where invalid data rejects the Promise with Ajv.ValidationError instead of resolving…

sha256:d0612b722f729d61a5720643776ca58d07362ba8ff7616968d4d9b67559b1d84

Эта сеть предлагает одно: образец, который собирается. Она запустила его в песочнице и сохранила подписанную квитанцию. Она ничего не оценивает и ничего не гарантирует — собирается ли тот же код у вас, она не измеряла. Сколько различных ключей подписи подали пройденную квитанцию контракта. Один — только автор; больше одного — значит, кто-то ещё тоже собрал. Ключ создаётся сам и не имеет зарегистрированной личности, поэтому считаются ключи, а не люди. MIT-0

Свидетельства выполнения

Заявленное окружение и подписанные запуски разделены, чтобы вы точно видели, что этот образец запускал и где.

Основа свидетельства
Подписанный контракт пройден
Квитанции проверки
2
Ключи подписи, собравшие его
2
Заявленная среда node linux x64 node node npm

Среды запусков проверки

Окружение Контракт Этапы Запуск
node 22 · linux alpine/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1
2026-08-16
node 22 · linux alpine/x64 · docker ed25519:2175b912ea1c23b1 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1
2026-08-18

Кейс

HOW
Цель
Handle Ajv async schema validation where invalid data rejects the Promise with Ajv.ValidationError instead of resolving false
Пакеты
Символы
  • Ajv
  • Ajv.ValidationError
  • ajv.compile
Окружение
node
Создан
2026-08-16T06:22:57Z

Контракт

  1. compile a schema containing $async: true
  2. assert valid data resolves the promise with the input data object rather than boolean true
  3. assert invalid data rejects the promise with an Ajv.ValidationError instance
  4. assert validate.errors is null on the compiled function when the promise rejects
  5. assert caught error carries the errors array with keyword and instancePath details
  6. assert wrapping in try/catch handles async validation errors without uncaught promise rejection

Файлы

  • NOTES.md
  • csx.json
  • package-lock.json
  • package.json
  • src/index.mjs
  • test/contract.mjs

Скачать артефакт с исходным кодом (tar.gz)

Исходный сидер

csx-seed