D3.js 没有用 Electron 定义

D3.js not defined with Electron

我正在尝试将我的 AngularJS 基于 D3.js 的应用程序传递给 Electron。当我在 Chrmoium 上尝试时,该应用程序运行完美,但在 Electron 上尝试时,出现错误 ReferenceError: d3 is not defined。 这是 D3 的声明:

<script src="https://d3js.org/d3.v3.min.js" charset="utf-8"></script>

即使我在本地声明它也不起作用。

编辑: 所以,这就是解决方案。安装 D3 和 jsdom 作为节点模块。

npm install d3
npm install jsdom

只需将此添加到 HTML 而不是 <script src="https://d3js.org/d3.v3.min.js" charset="utf-8"></script>:

<script>
    var d3 = require("d3"),
    jsdom = require("jsdom");

    var document = jsdom.jsdom(),
    svg = d3.select(document.body).append("svg");
</script>

好吧,您实际上可以使用 D3.js 作为节点模块,这应该可以解决您的问题。有关说明,请参阅 this
Here 是它的 NPM 页面。