[英]Import NPM module having dependency
当前切换到Meteor 1.3及其npm模块支持,我遇到了以下问题:
TypeError: Cannot set property 'tip' of undefined
这里是相关代码myFile.js :
import d3 from 'd3';
import d3tip from 'd3-tip';
//...
chart.tip = d3tip()
.attr('class', 'd3-tip')
.offset([-10, 0])
.html(function(d) {
//...
});
错误来自软件包d3-tip
:
(function (root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module with d3 as a dependency.
define(['d3'], factory)
} else if (typeof module === 'object' && module.exports) {
// CommonJS
module.exports = function(d3) {
d3.tip = factory(d3) // HERE THE ERROR (d3 probably not defined)
return d3.tip
}
} else {
// Browser global.
root.d3.tip = factory(root.d3)
}
}(this, function (d3) { //...}
我猜包d3-tip
找不到d3
,但是在myFile.js
上找到了d3
作为d3-tip
。
我应该做些什么在d3-tooltip上手动注入d3吗?
我认为你实际上必须做
import d3tip from 'd3-tip';
d3tip(d3);
将其附加到d3.tip()
出现以下问题:
import d3 from "d3";
这是解决方案:
import * as d3 from "d3";
希望对您有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.