我正在尝试加载 d3-selection-multi
与使用 RequireJS 的 d3
v4 一起。我的主要脚本是:
<script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.2.0/require.min.js"></script>
<script>
require.config({
paths: {
"d3": "//d3js.org/d3.v4.min",
"d3-selection-multi": "//d3js.org/d3-selection-multi.v1.min",
"d3-queue": "//d3js.org/queue.v1.min",
"underscore": "//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min",
"jquery": "//cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min",
"jquery_easing": "//cdnjs.cloudflare.com/ajax/libs/jquery-easing/1.3/jquery.easing.min",
"bootstrap": "//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min",
"moment": "//cdnjs.cloudflare.com/ajax/libs/moment.js/2.14.1/moment.min"
}
});
</script>
但是d3-selection-multi
需要d3-transition
和d3-selection
,所以如果我添加它们,我就会发现d3-transition
需要 d3-color
等等。
普通的d3
v4不是带有d3-selection
、d3-transition
、d3-color
吗>,还有这一切?这是否意味着一旦我选择使用一个微库,我就无法使用正常的d3
并且我需要定义所有其他依赖的微库?
我想使用 d3-selection-multi
,这样我就不必重写所有 .attr()
来不使用 {}
语法。
最佳答案
如果您不想将应用程序完全切换到 d3 微库,您可以通过 requirejs map
配置引用捆绑的 d3 库的依赖项。可以找到需要的依赖here .
requirejs.config({
paths: {
'd3': '...',
'd3-selection-multi': '...',
...
},
map: {
'*': {
'd3-color': 'd3',
'd3-dispatch': 'd3',
'd3-ease': 'd3',
'd3-interpolate': 'd3',
'd3-selection': 'd3',
'd3-timer': 'd3',
'd3-transition': 'd3'
}
}
});
关于d3.js - 在 RequireJS 中加载 d3-selection-multi 和 d3 v4 的简单方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39061334/