打包需要jQuery的JavaScript库的最佳方法是什么?

我正在编写一个非常基本的JavaScript库,它使用jQuery的$ .ajax()函数。

我应该如何管理这种依赖关系? 我应该指导我的图书馆的用户自己加入jQuery吗? 我是否应该使用诸如RequireJS或脚本标记插入的方式在库中加载jQuery? 如果后者会更好,如果用户已经在使用jQuery,我该如何做到这一点而不会导致冲突?


我认为这有点取决于如果你有更多的依赖,而不是jQuery。

如果jQuery是你唯一的依赖项,并且你的库并不真的需要它自己的模块依赖系统,我不会推荐RequireJS。 只需检查库中是否存在jQuery,否则就会抛出错误。

如果你正在寻找一个灵活且可维护的库,我会推荐使用一些模块加载器(如RequireJS)。 这也为您提供了使用构建系统的优势,该系统允许您组合和打包库


我最终编写了我自己的函数来获取JSON数据,尽管在原始文章中推荐使用这些愚蠢的数据。 感谢所有回复的人。 JavaScript库依赖关系的指导是非常有价值的,即使我沿着这条路线走下去了。

我用这个堆栈溢出答案作为编写我自己的函数来获取JSON的指南。 我需要同步获取数据,所以我调整了这篇文章中提到的技巧。

最后,我的功能看起来像这样。 我希望它能帮助到来的其他人。

var fetchJSON = function(path, callback) {
  var httpRequest = new XMLHttpRequest();
  httpRequest.open('GET', path, false);
  httpRequest.send();
  if (httpRequest.readyState === 4) {
    if (httpRequest.status === 200) {
      var data = JSON.parse(httpRequest.responseText);
      if (callback) callback(data);
    }
  }
}

我建议你建议用户先包含jquery。 如果你让我选择任何例子,你会看到这是一个真正使用的方法(例如.net框架)

链接地址: http://www.djcxy.com/p/12899.html

上一篇: Best way to package a JavaScript library that requires jQuery?

下一篇: MVC 4 application giving a 404 when deployed