繁体   English   中英

带有requirejs的JQVMAP

[英]JQVMAP with requirejs

如何带有require.js的jquery向量映射用作模块?

JVP和AMD兼容吗? 如果有人可以链接到示例或提出一些解决方法,那就太好了。

我无法使用shim选项,因为我正在使用旧的require.js,并且无法更新它。

您可以自己用define包装库,从而有效地实现shim选项的功能。 快速测试设置:

jqvmap-wrapped.js

// to simplify the example used jQuery named as "jquery.js" 
define(['jquery'], function(jQuery){
   // original jqvmap.js goes here
   // (...)

   // please note: not returning anything
});

index.html

<html>
  <head>
    <script data-main="index" src="require.js"></script>
  </head>
  <body>
    <div id="vmap" style="width: 600px; height: 400px;"></div>
  </body>
</html>

index.js

define(['jquery', 'jqvmap-wrapped'], function ($, _jqvmapEmpty) {
   console.log('jQuery=', $);
   console.log('jqvmap-wrapped=', _jqvmapEmpty);
   console.log('jqvmap attached to jQuery? ', $.prototype.vectorMap);

   $('#vmap').vectorMap({
     // params
   });
})

一句话解释:该插件将自身添加到jQuery,没有“独立”版本。 包装器模块不返回任何内容,它只是具有将jqvmap添加到jQuery对象的jqvmap 这就是_jqvmapEmpty变量本身undefined 不过,它可以通过jQuery使用,因此您可以像在非模块化代码中一样使用它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM