如何使用Require JS管理非AMD依赖项?

时间:2013-01-11 18:03:47

标签: javascript requirejs amd

我尝试管理一个没有AMD支持的库,这个库依赖于其他3个JS文件(https://github.com/augustl/js-epub)。

我必须按以下顺序包含文件:

<script type="text/javascript" src="zip/jszip.js"></script>
<script type="text/javascript" src="zip/jszip-load.js"></script>
<script type="text/javascript" src="zip/jszip-deflate.js"></script>
<script type="text/javascript" src="zip/jszip-inflate.js"></script>

目前我尝试通过垫片处理依赖关系:

shim {

      "zip/jszip": {
        "deps": ["zip/jszip-deflate", "zip/jszip-inflate", "zip/jszip-load"],
        "exports": "JSZip"
      }
}

但脚本包含在错误的顺序中。我该如何管理?

最好的问候,hijolan

1 个答案:

答案 0 :(得分:3)

deps dependencies数组定义了需要在> 前加载脚本的脚本。您的垫片声明是错误的方法:您需要填充依赖于jszip的模块并将jszip列为依赖项。

shim: {
  "zip/jszip": {
    "deps": [],
    "exports": "JSZip"
  },
  "zip/jszip-load": {
    "deps": ["zip/jszip"],
    "exports": "JSZip"
  },
  "zip/deflate": {
    "deps": ["zip/jszip"],
    "exports": "JSZip"
  },
  "zip/inflate": {
    "deps": ["zip/jszip"],
    "exports": "JSZip"
  }