当使用RequireJS时,我该如何从CDN加载第三方JavaScript?

31

我一直在使用RequireJS进行依赖管理,必须说我很喜欢它 - JavaScript最近真的变得更加成熟了。

然而,有一件事情我无法理解:当使用优化器将所有JavaScript模块捆绑到一个文件中时,如何保持从外部CDN URL加载某些第三方脚本(例如jquery),而不是将其与我的应用程序代码捆绑在一起?

1个回答

41

这将从CDN加载jQuery:

<script src="http://requirejs.org/docs/release/2.1.5/comments/require.js"></script>
<script type="text/javascript">
  require.config({
    paths: {
        "jquery": "https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min"
    },
    waitSeconds: 40
  });
</script>

<div id="message">hello</div>

<script type="text/javascript">
  require( ["jquery"],
    function ($) {
      alert($.fn.jquery + "\n" + $("#message").text());
    }
  );
</script>

这里有个Fiddle示例.

RequireJS文档中的这个页面展示了如何从优化的构建中排除路径。基本上使用empty:方案。这里是摘录:

node ../../r.js -o name=main out=main-built.js baseUrl=. paths.jquery=empty:

如果加载jquery后,我想要加载data-main文件,你能建议如何做吗? - Gaurav
请使用完全限定的CDN URL来指定data-main文件,例如:<script data-main="<CDN>/main.js" src="<CDN>/requirejs.min.js"></script>。 - Neeraj Gulia

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接