我正在制作一个React项目,但在使用库时遇到了问题。我想导入D3和一个叫做d3-3d的插件,但是每当我这样做的时候,D3 -3d向D3对象添加函数的原生功能就不起作用了。
在更简单的项目中,只需插入脚本标记即可工作:
<script src="https://d3js.org/d3.v4.min.js"></script>
<script src="https://unpkg.com/d3-3d/build/d3-3d.min.js"></script>然后调用放置在d3上的一个名为_3d的新函数。例如:
d3
._3d()
.scale(4)
.origin(origin)
.rotateX(startAngle)
.rotateY(startAngle)
.primitiveType("POINTS");但是对于React,没有附加这样的方法。我不完全理解导入和导出是如何工作的,但这里有一个d3-3d源代码的片段,它正在处理自己的导出,如果有帮助的话。
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
typeof define === 'function' && define.amd ? define(['exports'], factory) :
(factory((global.d3 = global.d3 || {})));
}(this, (function (exports) { 'use strict';
...
exports._3d = _3d;
Object.defineProperty(exports, '__esModule', { value: true });
})));我只想知道如何在使用导入语法的react环境中获得与纯脚本标记相同的功能。
我已经试过这样的东西了
import "d3-3d";我听说这只是为了一个库的副作用,但这并不起作用。也没有将其作为d3_3d导入,并将_3d方法作为d3对象上的一个属性。
提前感谢!
发布于 2018-08-21 18:28:56
import * as d3 from 'd3';
import { _3d } from 'd3-3d';
d3._3d = _3d;
https://stackoverflow.com/questions/51938571
复制相似问题