Внешняя библиотека (AJV) не распознается при использовании Dojo

Я пытаюсь использовать другой валидатор JSON-схемы ( AJV), и приведенный пример кода прекрасно работает в JSFiddle, когда я использую простой Java-скрипт, подобный этому

AJV тест - JSFiddle без библиотеки (чистый JavaScript)

var ajv = Ajv({allErrors: true});

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

var validate = ajv.compile(schema);

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

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

Но когда я пытаюсь использовать тот же самый точный код, что и выше, в сочетании с Dojo

AJV тест - JSFiddle с использованием Dojo 1.10.4

Я получаю эту ошибку

fiddle.jshell.net/pbq2yjxy/18/show/:50 Uncaught ReferenceError: Ajv не определен

Как я могу использовать библиотеку AJV с Dojo?

1 ответ

Решение

Глобальная потребность предоставляется browserify, она конфликтует с Dojo. Решение состоит в том, чтобы загрузить Ajv перед Dojo. Это решается здесь: https://github.com/epoberezkin/ajv/issues/234

Другие вопросы по тегам