[英]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.