javascript - 使用 Dojo 时无法识别外部库 (AJV)

标签 javascript dojo json-schema-validator ajv

我正在尝试使用另一个 json 模式验证器 ( AJV ),当我使用像这样的普通 java 脚本时,提供的示例代码在 JSFiddle 中工作正常

AJV test - JSFiddle with no library (pure 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 test - JSFiddle using Dojo 1.10.4

我收到此错误

fiddle.jshell.net/pbq2yjxy/18/show/:50 Uncaught ReferenceError: Ajv is not defined

如何在 Dojo 中使用 AJV 库?

最佳答案

全局 require 由 browserify 提供,与 Dojo 冲突。 解决方案是在 Dojo 之前加载 Ajv。 在这里解决了:https://github.com/epoberezkin/ajv/issues/234

关于javascript - 使用 Dojo 时无法识别外部库 (AJV),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38402021/

相关文章:

javascript - 让 dojox.layout.ContentPane 等 Dojo 小部件适用于使用 Cordova 和 NetBeans 开发的 Android 应用程序

json - .json 文件架构验证的最佳工具

Javascript/Jquery 如何检测另一个窗口中的点击

javascript - Map.filter()没有返回预期的输出

javascript - function() 不是 dojo 中的函数

json-schema-validator 自定义消息

json - 有条件地将additionalProperties应用于子级,但不适用于引用它的父级

javascript - Object.defineProperty 与 Vanilla 属性

javascript - 在 JS 中转换 OHLC 中的连续股票数据(开盘价、最高价、最低价、收盘价)

javascript - 如何显示我的 GridX